Code our life 日日行,不怕千万里;时时学,不怕千万卷

24三/100

cakephp中定义flash的样式

公司要用cakephp开发项目,由于之前没有使用过cake,开发起来比较吃力。因为项目过紧,也就没有时间去慢慢系统的学习cake,只有一边学一边做。

今天就遇到了一个自定义flash信息的问题。一般我们在controller中使用setFlash()来设置信息内容:

    $this->setFlash('要现实的信息');

然后在view层使用flash()来显示。默认是生成一下的html

    <div class="message" id="flashMessage">要现实的信息</div>

可是今天wendy发来的模板上面包裹着显示信息的div有个class(不是默认的"message"),如何设置信息中的样式难住了我,google搜索相关资料都找不到解决方法。

最后只好硬着头皮看源码了,看了源码后才茅塞顿开,原来setFlash()就可以设置包裹信息的html元素!而这些api上应该是有说明的。
自定义flash样式代码如下:

    $this->setFlash('可以设置样式咯','default',array('class'=>'你自己的class'));

setFlash中的第二个参数是设置包裹信息的html元素,源码中默认是'defualt'(相当于div),如果要用其他元素,需要另外定义element模板。

PS:到新公司上班第三天了,感觉很好,公司的气氛很活跃。