Codeigniter 2使用未确定数量的段/参数进行路由

时间:2012-07-12 09:13:00

标签: php codeigniter routes ion-auth

我正在使用Codeigniter 2,目前正在使用'路由器'配置文件来设置路由。 我也在使用IonAuth库。 我有一个类似的代码:

    $route['admin/(login|logout|change_password|forgot_password|reset_password
|activate|deactivate|create_user)'] = "auth/$1";

现在我的问题是,在一些IonAuth方法中,没有,1或2个参数。 如果我尝试访问网址,如:

http://localhost/ion_auth_try/admin/deactivate/1

我收到404错误。

'deactivate'方法的签名是

function deactivate($id = NULL)

我一直试图解决这个问题很长一段时间。我被卡住了。

1 个答案:

答案 0 :(得分:3)

如果我是你,我会这样做。

$route['admin/(:any)'] = "auth/$1";

它更简单,它完美地解决了这个问题。根据上述规则,您可以正常访问admin/some_methodadmin/some_other_method/with_a_parameter。但是,您应该注意,如果您只需输入admin来访问该页面,则需要添加以下内容:

$route['admin'] = "auth";

请参阅文档:http://codeigniter.com/user_guide/general/routing.html