2

フォームの検証を行うには、一般的ではない問題があります。

最初に問題の一部を説明させてください: 私は CakePhp Web サイトを実行しています。これを行うために、2 つのデータベースがあります。製品、顧客照会、請求書 (ERP によって提供される) に関連する 1 つのデータベース (データベース A) と、ウェブサイトがウェブサイトのためにのみ保存する必要がある情報に関連する 1 つのデータベース (データベース B) です。 (ユーザーのパスワード、カートの中身、商品のコメントなど)。

データベース A に 1 つの「アドレス」を作成する データベース A に 1 つの「顧客」を作成する データベース B に 1 つの「ユーザー」を作成する.

これは 1 つのアクションである必要があります。

私はユーザーコントローラーを使用しているので、「ユーザー」のすべてのフィールドを検証するのに問題はありませんが、このフォームを作成して、顧客とアドレスモデルにあるすべての制約を検証するにはどうすればよいですか?

問題は、ユーザーと顧客が同じデータベースにないため、 $belongsTo と $hasOne を宣言できないことです (実際にはそれについてはわかりませんが、自動左結合のため、ロジックのようです)。ユーザーと顧客の関係。

では、これらの制約を確認するにはどうすればよいでしょうか。どうもありがとうございました

4

1 に答える 1

2

フィールドを手動で検証できます。

$this->Customer->set( $this->data );
$this->Address->set( $this->data );

if( $this->User->validates() && $this->Customer->validates() && $this->Address->validates() ) {
    // save data
}
于 2011-09-29T07:37:47.057 に答える