2012-01-22 71 views
0

我的主佈局中定義了一個側欄,大多數時候都會顯示登錄表單。用戶登錄後,我需要刪除該表單並將其替換爲用戶數據。在查看支持部分以顯示子部分時,我也需要更改側邊欄。根據CakePHP中的視圖加載佈局元素

我是否需要將元素加載到每個視圖還是有其他方法?

由於提前, 丹尼斯

回答

1

底線是你會需要一個if($supportpage){} elseif($loggedin){} else{}塊。如果你不想把它放在你的佈局文件,你可以爲每個選項創建一個元素,然後set()app_controller正確的:

if ($supportpage) $sidebar = 'support'; 
elseif ($loggedin) $sidebar = 'loggedin'; 
else $sidebar = 'notloggedin'; 

$this->set(compact($sidebar)); 

然後把$this->element($sidebar)在你的佈局。

+0

嗨ori。與AppController的漂亮ideea。我會證明給它一個嘗試。我喜歡儘可能保持html的清潔,這是我選擇首先使用元素的原因。 – DenisR