ホーム » ブログ » CakePhpでのフラッシュメッセージ表示問題
このエントリーをはてなブックマークに追加
@2017/03/23

スポンサーリンク
最近Cakephpを少しい触っています。ところで完了画面やワーニング・エラー画面でメッセージを表示でflashを利用したら、下記のようなエラーが画面で出ています。

Notice (1024): Element Not Found: Elements/default.ctp [CORE/Cake/View/View.php, line 425]
コントローラ中で、$this->Session->setFlash(‘エラーメッセージ’,…)のように、ちゃんと正しく設定している。
更に調べたら、CakePHPのドキュメントにこう書かれています。
バージョン 2.7.0 で撤廃: フラッシュメッセージの作成には フラッシュ を使用すべきです。 setFlash() メソッドは、3.0.0 で削除されます。
ただ今利用しているcakePHPはバージョン2.9ですので、つまり、推奨しないメッソドを利用しているので、上記のエラーメッセージを出ている。
CakePHP3.xからは、$this->Flash->set(‘メッセージ’)のような推奨するメッソドです。
ですので、上記エラー解決ために、ソースコードは下記のように書き換えてください。

$this->Session->setFlash(‘エラーメッセージ’,…)  ×
$this->Flash->set(‘メッセージ’) ○
$this->Flash->Success(‘成功メッセージ’) ○
$this->Flash->Failure(‘失敗メッセージ’) ○
$this->Flash->Warning(‘ワーニンングメッセージ’) ○
$this->Flash->YourCustmizeTpl(‘ワーニンングメッセージ’) ○
上記、Success、Failure、Warningなどは、/view/Elements/Flash/なかでsuccess.ctp、failure.ctpなどを作成してください。

最後、FlashComponetを利用するので、コントローラー中でコンポネット利用宣言してください。
 	
public $components = array ('Flash' );

これで、Notice (1024): Element Not Found: Elements/default.ctp [CORE/Cake/View/View.php, line 425]エラーメッセージを解決しました。

【DEMO】
皆の出欠席手帳



♪ 当記事がお役に立ちましたらシェアして頂ければ嬉しいです。
0人
このエントリーをはてなブックマークに追加


★ 当記事を閲覧の方は下記の【関連記事】も閲覧していました。

お名前:

 

EMAIL:

 

URL:

 

認証コード:

zanmai.net-safecode

 


※会員の方は認証コードを要らないから、新規登録をオススメ!

check