нестандартные вложенные маршруты с Kohana 3 - PullRequest
0 голосов
/ 21 сентября 2011

У меня есть модель Articles и модель Category, обе с переменной url_slug (что я хотел бы показать в URL при поиске. Вот как я хотел бы, чтобы URL отображались:

//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 голосов
/ 22 сентября 2011

Вы можете использовать маршрут, подобный этому

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

В вашем контроллере вы можете получить доступ к фильтрам / идентификаторам с помощью

$category   = Request::current()->param('category_filter');
$article_id = Request::current()->param('article_id');

И соответственно отфильтруйте ваш вывод.

...