2012-03-28 39 views
0

在我的網站,我是動態地從數據庫加載內容這樣如何在使用Codeigniter的已配置路由時檢查控制器是否已經存在?

e.g mysite.com/about-us 

對於這一點,有數據庫的enrtry,所以它會加載內容的「關於美」 &它使用打印「頁面「控制器。

這就是我所做的是,我已經添加下面的配置在routes.php文件

$route[':any'] = "page"; 

但讓說如果我已經有一個名爲「關於美」控制器和我想要加載&不來自數據庫的那個,我該怎麼做?

回答

2

順利的解決方案是使用error/missing_page控制器並將其指向config/routes.php

然後它會自動選擇所有現有的控制器,然後控制器。

如果您在數據庫中未找到記錄,也可以致電show_404()

這使您可以創建新的控制器,而不必將所有這些控制器都指向路徑文件。

Read about 404 override here

+0

awsome,這是快速解決方案 – aslamdoctor 2012-03-28 07:55:18

0

您需要添加此

$route['about-us'] = "aboutus"; 
$route['about-us/(:any)'] = "aboutus/$1"; 

$route[':any'] = "page"; 

爲CI路線是不貪,也不會檢查頁面控制器找到的關於美控制器之後。

相關問題