2015-07-10 89 views
0

我已经看过CakePHP的2.5.4的有关自定义的提示信息,并就如何使这一点,但它不工作的一些其他教程documentatioinCakePHP的自定义闪布局错误

我有下error.ctp和success.ctp元件夹 error.ctp

<div id="error-flash"> 
    <?php echo h($message); ?> 
</div> 

success.ctp

<div id="success-flash"> 
    <?php echo h($message); ?> 
</div> 

和在控制器我称他们这样

$this->Session->setFlash(__(' file successfully uploaded.','success',array('class'=>"flash_msg_ok"))); 

$this->Session->setFlash(__('Upload Failed','error', 
       array("class" => "flash_msg_error"))); 

我的Chrome开发工具仍然显示默认的闪存生成。 它不是渲染元素或将指定类

我也试过这种

$this->Session->setFlash('success','default',array('class'=> 'success')) 

仍然一无所获。

值得注意的是,我正在使用自定义布局和css的页面。 我在这里错过了什么?

+0

我认为你需要[flash-message](http://stackoverflow.com/questions/tagged/flash-message)标记而不是[flash(Adobe Flash)](http://stackoverflow.com/问题/标记/闪光),我编辑它。 – akmozo

回答

0

有几个问题..

首先,你不小心把其他函数变量翻译字符串内。您可以修复通话如下(注意闭架移动到结束消息字符串):

$this->Session->setFlash(__(' file successfully uploaded.'),'success',array('class'=>"flash_msg_ok")); 

$this->Session->setFlash(__('Upload Failed'),'error', 
      array("class" => "flash_msg_error")); 

其次,你需要将类添加到您的自定义错误元文件(CakePHP的文档却忘了提及这!)。例如:

<div id="error-flash" class="<?php echo $class; ?>"> 
    <?php echo h($message); ?> 
</div> 

希望有帮助!

+0

你救了我的一天..令人难以置信的我无法发现错误 – GOA