0

我的路由有一个小问题。

我的路线:

$route['category/(:any)/(:num)'] = "site/index/$2"; //not working
$route['category/(:any)'] = "site/index"; //not working
$route['category/(:any)/(:any)'] = "site/view/$2"; // working
$route['Search'] = "site/search"; // working

我想要什么:http ://example.com/category/Home - 调用站点/索引函数 http://example.com/category/Home/2使用参数 $2 调用站点/索引函数我得到 404 错误2条规则。

我尝试的是回显 category/(:any)/(:num) 的参数并回显它。这个回声在索引函数内。视图和模型存在于我声明的路径中。没有它,索引页本身就无法工作。所以我认为问题必须出在路由上

最有趣的是,当我将 category/(:any) 路由更改为站点/视图时它正在工作,但是当我在那里设置站点/索引时它不起作用。即使我在那里设置只有站点。

4

1 回答 1

0

我认为您要做的是将您的site课程设置为“默认控制器”。试试这个:

$route['default_controller'] = "site";
$route['(:any)'] = "site/view/$1";
$route['(:num)'] = "site/index/$1";

我真的不知道你想用你的做什么site/view/$1site/index/$1它会像这样工作:

example.com/someaction将匹配$route['(:any)']并将调用控制器的view方法作为字符串参数。sitesomeaction

example.com/2将匹配$route['(:num)']并调用控制器的index动作作为整数参数。site2

example.com/admin将调用控制器的index动作admin

example.com/admin/category将调用控制器的category动作admin

于 2013-07-05T15:46:34.760 回答