我有類似這樣的內容:更改閃存消息的位置
控制器。
public function add() {
$this->layout = 'home';
$this->Session->destroy();
if ($this->request->is('post')) {
$this->Session->setFlash(__('xxx', true));
}
}
查看。 home.ctp
<div id="container">
<div id="header">
</div>
<div id="content">
<?php echo $this->fetch('content'); ?>
</div>
<div id="footer">
<?php echo $this->Session->flash(); ?>
</div>
</div>
我的問題是:爲什麼flash的消息沒有顯示在頁腳?好吧,我想要的是在窗體下面顯示消息,但爲了簡化問題,使用此代碼,消息也顯示在頂部。但應該在頁腳中。此外,如果我刪除
<?php echo $this->Session->flash(); ?>
消息也顯示在頁面的頂部。
那麼,我該如何改變這個Flash消息的位置呢?
編輯:
<?php var_dump($this->fetch('content')); ?>
輸出:
string '<div id="flashMessage" class="message"> The user xxxxx</div>
<div class="users form">
<form action="/cake/users/add" id="UserAddForm" method="post" accept-charset="utf-8"><div style="display:none;"><input type="hidden" name="_method" value="POST"/></div> <fieldset>
<legend>
Add User
</legend>
<div class="input text required error"><label for="UserUsername">Username</label><input name="data[User][username]" maxlength="50" type="text" value="" id="UserUsername" class="form-er'... (length=1187)
無關緊要'Session :: flash()'被調用,所以這不是問題。這個請求是否一定要解僱?看起來有點奇怪,也會毀掉那裏的會話。 – Ross