codeigniter路由功能

时间:2013-07-05 15:24:58

标签: php codeigniter

我的路由问题很小。

我的路线:

$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调用site / index函数 我正在按照这两条规则制定404 erro。

我尝试的是回显类别/(:any)/(:num)的参数并回显它。这个回声在索引函数中。 adn模型的视图存在于我声明的路径中。没有它,索引页面本身是行不通的。所以我认为问题必须在路由

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

1 个答案:

答案 0 :(得分: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控制器的site方法调用someaction作为字符串参数。

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

example.com/admin会调用index控制器的admin操作

example.com/admin/category会调用category控制器的admin操作