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ビューで、またはフォームの上にリストされる要素としてどのように使用できますか?

Plz help私はたくさん検索しましたが、答えは古い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 に答える