0
我的主佈局中定義了一個側欄,大多數時候都會顯示登錄表單。用戶登錄後,我需要刪除該表單並將其替換爲用戶數據。在查看支持部分以顯示子部分時,我也需要更改側邊欄。根據CakePHP中的視圖加載佈局元素
我是否需要將元素加載到每個視圖還是有其他方法?
由於提前, 丹尼斯
我的主佈局中定義了一個側欄,大多數時候都會顯示登錄表單。用戶登錄後,我需要刪除該表單並將其替換爲用戶數據。在查看支持部分以顯示子部分時,我也需要更改側邊欄。根據CakePHP中的視圖加載佈局元素
我是否需要將元素加載到每個視圖還是有其他方法?
由於提前, 丹尼斯
底線是你會需要一個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)
在你的佈局。
嗨ori。與AppController的漂亮ideea。我會證明給它一個嘗試。我喜歡儘可能保持html的清潔,這是我選擇首先使用元素的原因。 – DenisR