与Kohana 3的自定义嵌套路线

时间:2011-09-21 19:55:58

标签: routes kohana

我有一个文章模型和一个类别模型,两者都带有url_slug变量(我想在查找时显示在网址中。以下是我希望如何显示网址:

//list all of the articles
http://example.com/articles   

//list of all the articles in that category
http://example.com/articles/:category_slug 

//a single article.
http://example.com/articles/:category_slug/:article_slug

我应该如何设置文章控制器和/或路线以实现这一目标?

1 个答案:

答案 0 :(得分:0)

您可以使用这样的路线

Route::set('articles', '/articles(/<category_filter>(/<article_id>))', array(
    'controller' => 'Articles',
    'action' => '(index)'
))
->defaults(array(
    'controller' => 'Articles',
    'action'     => 'index',
));

在您的控制器中,您可以使用

访问过滤器/ ID
$category   = Request::current()->param('category_filter');
$article_id = Request::current()->param('article_id');

并相应地过滤您的输出。