php - 尝试自定义 Flash 消息时出现错误 $content_for_layout

标签 php cakephp frameworks

我正在尝试为我的应用程序自定义 Flash 消息,为此我在/app/Views/Elements 中创建了 3 个文件,并将它们命名为 flash_error.ctp、flash_information.ctp 和 flash_success.ctp。它们之间的区别在于应用的 CSS 类。内容相同,如下:

<div class="alert alert-success">
  <a class="close" data-dismiss="alert">×</a>
  <strong>Warning!</strong> <?php echo $content_for_layout; ?>
</div>

但是当我尝试使用以下方式显示任何 Flash 消息时:

$this->Session->flash();

例如我收到此错误:

Notice (8): Undefined variable: content_for_layout [APP/View/Elements/flash_success.ctp, line 3]

为什么?有人可以帮我吗?我被困住了!!! :-(

最佳答案

您需要更换:

<?php echo $content_for_layout; ?>

<?php echo $message; ?>

更新

要使用 Flash 消息,您需要在 setFlash 方法中调用它。例如,如果您从成功保存的客户处调用它,它将如下所示:

$this->Session->setFlash(__('The customer has been saved'), 'yourCustomFlashMessage');

然后,确保您拥有 views/elements/your_custom_flash_message.ctp

关于php - 尝试自定义 Flash 消息时出现错误 $content_for_layout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9441170/

相关文章:

php - 获取复选框中的值并将其插入到mysql数据库中

php - CakePHP 在登录时保存日期/时间

.net - 您对 MS CAB(复合应用程序 block )有何看法?

php - TYPO3 流资源是否允许无限循环?

frameworks - 游戏 AI OO 框架

php - mysql查询日志中的^M字符,它是从哪里来的?

PHP和MYSQL支持版本升级

javascript - 在 1 页而不是 2 页中添加编辑功能

javascript - (CAKPHP) 突出显示产品表中的一行以进行比较(无需悬停)

php - Cakephp 3.x 记住我登录功能