2009-11-02 107 views
1

我是新來的CI和URI路由的一般。CodeIgniter:簡單的URL路由問題

我創建了一個新的應用程序。將默認控制器設置爲Main。在Main中,我有一個index方法,一個popular方法和一個recent方法。

當我加載我的應用程序時,網址顯示爲http://localhost/myapp ...這顯然加載方法Main控制器...這很好。

現在我該如何路由我的URI,以便我可以分別使用http://localhost/myapp/popularhttp://localhost/myapp/recent加載流行和最近的方法?

回答

2

您可以使用CodeIgniter的路由功能。要做到這一點,只需添加以下行到你的application/config/routes.php文件文件:

$route['recent'] = "main/recent"; 
$route['popular'] = "main/popular"; 
+0

您不能擁有名稱爲「index」的控制器。它是保留的。 請參閱http://codeigniter.com/user_guide/general/reserved_names.html – 2009-11-03 01:35:41

+0

糟糕。是的,修正了錯字。指數應該是主要的。 – Franz 2009-11-03 01:42:45

+0

沒問題。它發生了:) – 2009-11-03 07:04:05

0

如果popularrecent是應用程序中的實際頁面,而不是函數,那麼應該將它們移動到它們自己的控制器,而不是將它們保留在主要的位置。

+0

我對CodeIgniter並不太熟悉,但是聽起來並不正確。我99%肯定它是路由器可以做到這一點,並且與已經配置的mod_rewrite混合可能不是一個好主意,也不一致。 – mpen 2009-11-03 01:41:33

+0

謝謝馬克我不知道CI中的路由器。 – 2009-11-03 15:19:33

2
$route['recent'] = "your_controller/recent"; 
$route['popular'] = "your_controller/popular"; 

這就是你所需要的。任何對「最近」的呼叫都將路由到「your_controller/recent」。同樣受歡迎。