蛋糕PHP自定义设置闪光灯


CakePHP custom setFlash

我在CakePHP书上读到,您可以使用元素定义自己的自定义setFlash消息...但是我会在元素中放入什么以及如何传递不同的内容。

例如,两条不同的消息:

<div id="flashMessage" class="message">
    <div class="content">
        <p>Please correct the errors</p>
    </div>
</div>

<div id="flashMessage" class="announcement message">
    <div class="content">
        <h3>Announcement</h3>
        <p>You have earned a new achievement</p>
    </div>
</div>

因此,如您所见,我想定义一个包装器div 和一个内容div,然后在需要时还传递一个额外的类,具体取决于消息的类型,并显示不同的内容,例如仅一个段落或标题和一个段落。

谁能帮忙?谢谢

您可以有两个元素:

Myflash.ctp

<div id="flashMessage" class="message">
    <div class="content">
        <p><? echo $message ?></p>
    </div>
</div>

公告.ctp

<div id="flashMessage" class="announcement message">
    <div class="content">
        <h3>Announcement</h3>
        <p><? echo $message ?></p>
    </div>
</div>

然后:

$this->Session->setFlash($message,'myflash or announcement');

一个元素:Myflash.ctp

<div id="flashMessage" class="<? echo (isset($myclass)?$myclass.' ':'') ?>message">
 <div class="content">
  <? echo (isset($header)?'<h3>' . $header.'</h3>':'') ?>
   <p><? echo $message ?></p>
 </div>
</div>

在您的控制器上:

$this->Session->setFlash($message,'myflash',array('myclass'=>'announcement','header'=>'Announcement');