2009-11-02 164 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”。同样受欢迎。