我一直在寻找如何做到这一点的解决方案,但我最接近解决方案的是你的模型,
public function beforeSave() {
parent::beforeSave();
if(!isset($this->data["Model"]["confirm"])) {
return false;
}
}
在控制器中只需:
$this->Model->save($this->request->data);
if($this->Model->validates()) {
$this->render("confirm");
} else {
$this->Session->setFlash(__('The model could not be saved. Please, try again.'));
// now we can render
$this->render("index");
}
这种方法的问题是它会显示两次错误信息,有没有更好的方法呢?或者我应该以hackish方式执行此操作并找到一种方法来删除显示两次的错误消息。
答案 0 :(得分:1)
我应该更深入地研究文档:答案在于http://book.cakephp.org/2.0/en/models/data-validation/validating-data-from-the-controller.html
感谢@ dm03514指示我查看文档而不是API(我已经阅读了几天而没有找到真正的答案)!