3

好吧,我已经validationErrors在我的登录中设置了UsersController

public function login() {
    if ($this->request->is('post')) {
        $this->User->set($this->request->data);
        if ($this->User->validates() && $this->Auth->login()) {
            $this->set('ui', $this->Auth->user('id'));
            $this->Session->setFlash(__('Loged in!'), 'flash_success');
            $this->redirect($this->Auth->redirect());
        } else {
            $errors = $this->User->validationErrors;
        }
    }

}

现在我如何$error在我的视图中使用或作为要在我的表单上方列出的元素?

请帮助我搜索了很多,但答案是旧的 CakePHP,我使用的是 CakePHP 2.3.8。

4

1 回答 1

1

验证错误自动在视图中可用

在视图中获取验证错误不需要任何操作,因为它们是视图类的属性。可以通过以下方式简单地检查它们:

debug($this->validationErrors);

在视图中。

但您可能不需要访问它们

但是请注意,需要直接查看此属性是不正常的。使用表单助手错误会自动显示,或者您可以单独生成错误

if ($this->Form->isFieldError('email')) {
    echo $this->Form->error('email');
}
于 2013-08-16T13:42:27.993 回答