CakePHP3 デフォルトでフラッシュメッセージ用のテンプレートが3つ用意されています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | // デフォルトテンプレート src/Template/Element/Flash/default.ctp src/Template/Element/Flash/error.ctp src/Template/Element/Flash/success.ctp // default.ctp # cat src/Template/Element/Flash/default.ctp <?php $class = 'message'; if (!empty($params['class'])) { $class .= ' ' . $params['class']; } if (!isset($params['escape']) || $params['escape'] !== false) { $message = h($message); } ?> <div class="<?= h($class) ?>" onclick="this.classList.add('hidden');"><?= $message ?></div> // error.ctp # cat src/Template/Element/Flash/error.ctp <?php if (!isset($params['escape']) || $params['escape'] !== false) { $message = h($message); } ?> <div class="message error" onclick="this.classList.add('hidden');"><?= $message ?></div> // success.ctp # cat src/Template/Element/Flash/success.ctp <?php if (!isset($params['escape']) || $params['escape'] !== false) { $message = h($message); } ?> <div class="message success" onclick="this.classList.add('hidden')"><?= $message ?></div> |
◯ フラッシュメッセージ設定(コントローラー)
1 2 3 4 5 6 | // default.ctp $this->Flash->set('defaultだよ。'); // error.ctp $this->Flash->error('errorだよ。'); // success.ctp $this->Flash->success('successだよ。'); |
◯ フラッシュメッセージ表示(ビュー)
1 | <?= $this->Flash->render() ?> |
◯ フラッシュメッセージ イメージ画像($this->Flash->error)