我有一个显示评论表单的元素,操作是评论/添加。如果表单没有验证,我不希望用户转到评论/添加(视图不存在),但我希望它们保留在同一页面上并查看那里的验证错误。
但是,重定向到$ this-> referer()不起作用 - 验证错误消失,只剩下flash消息。
public function add(){
if (!empty($this->data)){
$this->Comment->create();
if ($this->Comment->save($this->data)){
$this->Session->setFlash('Comment added.','success');
$this->redirect($this->referer());
}else{
$this->Session->setFlash('There was a problem adding your comment. Please try again.','failure');
}
}
}
如何保留验证错误并在重定向上形成数据?如果这不可能,我还能怎样解决这个问题?
非常感谢,
威尔
答案 0 :(得分:1)
答案 1 :(得分:0)
只需删除$ this->重定向($ this-> referer());共
此外,如果您正确设置了字段验证,用户如何进行重定向?如果输入了无效数据,则save()函数将失败,并且用户永远不会看到重定向,并且db将永远不会接受任何数据。