Как изменить формат URL по умолчанию в кохане 3.2.
база / новости / news_details to news /
Route::set('news_tracking2', 'news/news_details')
->defaults(array('controller' => 'news','action' => 'index','method' => NULL));
Вы смешиваете понятия. Существует маршрутизация, которая переводит входящий URL в Request::controller-action
(1). И генерировать ссылки для HTML (2).
1: для маршрутов:
Route::set('second', 'awesome_news_prefix(/<id>(/<offseet>))', array('offset' => '[1-9]\d*(\.\d+)?'))
->defaults(array(
'controller' => 'news',
'action' => 'index',
'id' => NULL,
'offset' => NULL,
));
Route::set('default', '(<controller>(/<action>(/<id>(/<offseet>))))', array('controller' => '[a-z][^/\.]+', 'offset' => '[1-9]\d*(\.\d+)?'))
->defaults(array(
'controller' => 'news',
'action' => 'index',
'id' => NULL,
'offset' => NULL,
));
генерация ссылок
URL :: site (Route :: get (‘default’) -> uri (array (‘id’ => 1)));
дать результат: http://example.com/news/index/1
URL::site(Route::get('second')->uri(array('id' => 1)));
дать результат: http://example.com/awesome_news_prefix/1
Других решений пока нет …