次のようなビューファイルがあります。
<?php
echo $this->Form->create('ModelName');
echo $this->Form->input('ModelName.0.firstField');
echo $this->Form->input('ModelName.0.secondField');
echo $this->Form->input('ModelName.1.firstField');
echo $this->Form->input('ModelName.1.secondField');
echo $this->Form->end();
?>
私の質問は、このデータをどのように検証するのですか? 私は保存していないので、save または saveAll メソッドを呼び出すのは無意味に思えます。データを処理して結果をユーザーに表示する前にデータを検証したいだけです。
現在使用中の動作:
<?php
if ($this->request->is('post')) {
$this->ModelName->set($this->request->data);
if ($this->ModelName->validates()) {
echo $this->Session->setFlash('Success');
} else {
echo $this->Session->setFlash('Failure');
}
}
?>
絶対に失敗するはずのデータを入れているときでも、常に成功していますか。私も試しました:
<?php
if ($this->request->is('post')) {
if ($this->ModelName->validateMany($this->request->data)) {
echo $this->Session->setFlash('Success');
} else {
echo $this->Session->setFlash('Failure');
}
}
?>
そして、それは常に成功を返しますが、それはvalidateManyを適切に使用する方法がわからないという事実によるものかもしれません.