2012-03-28 3 views
-1
<?=$this->Form->input('username');?>     
<?=$this->Form->input('email');?> 

私はフォームヘルパーを使いたいです。しかし、1ページに2つのフォームがあるとしましょう。それぞれに2つの異なるアクションがある場合、どのように他のものを検証するのですか?1ページに複数のフォームがあります。それを検証する方法は? CakePHP

もちろん、$this->ModelName->validationErrorsを使用してforeachを使用してエラーを表示することはできますが、それは悪い習慣だと思います。

+1

を必要とするすべてをカバーしています。あなたは具体的に何を検証しようとしていますか?アクションにフォームを送信しても、他のフォームは送信されないので、それを検証する際のポイントは何ですか? – jeremyharris

+0

同時に2つの異なる形式を送信していますか?同じフォームに2つのフィールドがありますか? –

+0

2つの形式があります。カテゴリを追加してタグを追加する –

答えて

0

javascriptベースのバリデーションルールまたはAJAXを使用せずに、1つのページで2つのフォームを明確に検証することはできません。そして、ところで、サーバー側でJSの検証を行わずに、JSの検証だけに頼ることは愚かです。

これを1つのフォームにすると、モデルで両方を検証することができ、コントローラはエラーを表示するように設定します。フォームがHTMLで動作すると考えられる方法は、1つのページである2つのフォームを同時に提出することはできません - 明らかで論理的な理由からです。それはCakePHPではなくHTML標準に関連しています。

このページでは、AJAXがないわけではないが、単純にhttp://book.cakephp.org/2.0/en/models/data-validation/validating-data-from-the-controller.html

関連する問題