2012-04-12 39 views
0

我剛發現在修改新的CakePHP安裝的主頁時默認使用Page Controller。我讀到這主要用於靜態頁面。我想製作一個靜態的左側垂直導航欄,但我不確定我需要如何使用其他控制器,從這裏開始,/cakeCakePHP:從主頁導航到使用其他控制器

這真的很混亂,因爲我試圖弄清楚事情,但是......例如,我有產品控制器,它允許我通過/cake/products在數據庫中對某些產品執行操作。所以,我用$this->element('left_menu')做了左手菜單,其中包括以下(HTML代碼省略)代碼,在C:\...\cake\app\views\pages\home.ctp

<?php echo $this->Html->link(__('Product View', true), array('action' => 'products/view')); ?> 

而且我的路由cake/page/products(從主頁)到產品控制器的索引頁,所以我可以用產品控制器的功能點擊該菜單按鈕時。

Router::connect('/pages/products/*', array('controller' => 'products', 'action' => 'index')); 

該左導航菜單在主頁上的作品,但是當我點擊這個菜單按鈕,轉到/cake/product/...,它不再有效,因爲它是相對於頁面控制器。我怎樣才能讓這個靜態的左邊的導航欄允許我使用其他控制器?最後,我希望這個靜態菜單能讓我使用其他控制器的功能。我很困惑!

回答

1

關於菜單已到位,您需要確保將所有菜單內容放入app/View/Layouts/default.ctp文件中。

而當您在該頁面上進行鏈接時,請查看HTML幫助程序並讓它爲您生成鏈接。節省大量的時間。

+0

那麼,CakePHP中的靜態項目應該在哪裏?這似乎是有道理的,因爲我希望頁眉,頁腳和(在我的情況下)每個頁面上的左側導航欄,這可以在一個文件中完成。有沒有關於這方面的文章? – musicliftsme 2012-04-13 16:40:49

+0

是的,這就是可以添加靜態信息的方式。然後您可以定義不同的佈局以添加不同類型的外觀。關於一篇文章,不確定。在切換到Yii之前,我只在一個站點上使用CakePhp(就像在類固醇上使用CakePhp)。如果你的網站不是很遠,可能值得一看。我得到了Cake框架陷入困境的印象。 – acorncom 2012-04-13 20:53:25

相關問題