0

どうすればそれができますか?

特定のアクションでは、1 つのフィールドだけを検証したいと考えています。別の 3 つのフィールドなどでは、作成/更新だけではありません。たとえば、次のようになります。

いくつかのフィルターを備えた検索フォームがあり、ユーザーがすべてのフィールドに入力したかどうかを検証する必要があります(javascriptではありません)。


詳細

CakePHP: 2.3
MySQL: 5.1
Apache: 2.2
PHP: 5.3.9

4

2 に答える 2

1

Model->validates()検証するフィールドの配列を手動で実行する必要があります。次に、検証チェックなしで ->save() を実行します。

$this->ModelName->set($this->request->data);
if ($this->ModelName->validates(array('fieldList' => array('email', 'password')))) {
      $this->ModelName->save($this->request->data, false); //false = no validation checking
}

参照: http://book.cakephp.org/2.0/en/models/data-validation/validating-data-from-the-controller.html

于 2013-02-20T23:59:10.190 に答える
1

アクションに基づいて検証ルールを切り替えるための優れたソリューションを次に示します。

于 2013-02-21T08:11:14.247 に答える