CakePHP3でgetErrors()を使うとバリデーションエラーを調べることができる

CakePHP3でgetErrors()を使うとバリデーションエラーを調べることができる

104 回閲覧されました

みなさんこんにちは、jonioです。

今回はCakePHPのgetErrors()メソッドの使い方についてのメモの記事になります。

CakePHPのバージョン

3.6で動作確認をしています。

コントローラー

コードを下記にします。

if ($this->Models->save($xxxxx)) {
  $this->Flash->success(__('保存が成功しました'));
} else {
  debug($xxxxx->getErrors());
  
  exit;
  
  $this->Flash->error(__('保存が失敗しました'));
}

値をテーブルに保存する際に失敗した時に「保存する値->getErrors()」を記述すると必須の値なのに入力してない・文字数オーバーしているなどのバリデーションに引っ掛かっているのを画面に表示するので値をテーブルに保存しようとして失敗した時に役に立つ印象です。