我不知道是否有包括在会话组件的setFlash()函数HTML任何适当方式。CakePHP的:HTML中setFlash()
基本上我有一个关于电子商务的网站,允许管理员创建和编辑“商店”的网站上发现了这个管理界面。在保存“商店”后,我希望CakePHP显示“您的店铺已成功保存,返回商店索引”。 “返回商店索引”将是一个链接。我目前使用普通的旧HTML如:
$this->Session->setFlash("Shop has been successfully published. <a href=\"...\">Return to Shop Index</a>");
工程,但它是控制器中的HTML,我认为这是一个“坏事”。
谢谢!
编辑:
感谢@YonoRan的解决方案。错过了CakePHP文档。下面是我所做的:
1)app/views/elements
创建新元素session_flash_link.ctp
。
2)添加在session_flash_link.ctp
下面的代码:
<div id="flashMessage" class="message">
<?php
echo $message;
echo $this->Html->link($link_text, $link_url, array("escape" => false));
?>
</div>
3)代码的控制器:
$this->Session->setFlash("Shop has been successfully saved. ", "session_flash_link", array(
"link_text" => "Return to Shop Management »",
"link_url" => array(
"controller" => "shops",
"action" => "manage",
"admin" => true
)
));
谢谢!你的第二个解决方案对我来说效果很好。我为链接的所有Flash消息创建了一个名为session_flash_link.ctp的新元素。 – yjwong