2011-03-20 137 views
0

我從鉤子動態生成頂級導航,我想根據數據庫中的「永久鏈接」列動態添加路由。Codeigniter - 鉤子動態路由

有沒有辦法從鉤子動態添加到$ route變量中?

謝謝。

回答

0

如果你有一個URL結構,這樣,

site.com/controller/navigation_link_item

其中navigation_link_item從數據庫中來,那麼控制器內,你可以訪問URL的這樣的第二部分:

$this->uri->segment(2); 

然後,您可以使用它來查找數據庫。

根據情況以及如何設置.htaccess,可能需要將輔助頁面路由到主控制器。在routes.php文件,你需要添加類似這樣一行:在開始

$route['controller/:any'] = 'controller'; 

這將路由所有的URL與控制器/到控制器,所以你可以看到,如果它在你的數據庫相匹配的頁面。如果你沒有爲傳入URI段的條目,你可以給一個404錯誤:

show_404(); 
0

默認路由是

$this->uri->segment(3); 

但是你可以設置按您的要求。並且依賴於網址

test.com/youtcontroller/aboutfunction

$this->uri->segment(2);