Как изменить формат URL по умолчанию в кохане 3.2.

Как изменить формат URL по умолчанию в кохане 3.2.

база / новости / news_details to news /

Route::set('news_tracking2', 'news/news_details')
->defaults(array('controller' => 'news','action'  => 'index','method' => NULL));

1

Решение

Вы смешиваете понятия. Существует маршрутизация, которая переводит входящий 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,
));
  1. генерация ссылок

    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

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]