Маршрутизация в kohana 3.1, как изменить имя url через маршрут?

Здравствуйте, сделал на сайте новости, по типу из примера от А до Я, видео уроки по кохане.
Так вот, без маршрутизации все работает и заходит в новости.

Тут все новости:
сайт.ru/news

Вход в полную новость:
сайт.ru/news/views/asia-pacific-primring-grand-prix

Как мне через маршрут убрать в урл views, а так же news поменять на слово akcii
Хотелось бы так сделать.

Тут все новости:
сайт.ru/akcii

Вход в полную новость:
сайт.ru/akcii/asia-pacific-primring-grand-prix

Вообще по идее маршрут правильный такой:
Route::set('news', 'news(/<id>)', array('alias' => '[0-9]*'))
 ->defaults(array(
  'action' => 'views',
  'directory'  => 'index',
  'controller' => 'news',
 ));


Хотя у меня работает все и без маршрутизации, если его убрать из бутстрапа.
  • Вопрос задан
  • 280 просмотров
Пригласить эксперта
Ответы на вопрос 1
somenumboola
@somenumboola
Team Lead in B-online Solutions
Два способа:
1. Статический (Фиксированный) роут.
Route::set('news', 'akcii/asia-pacific-primring-grand-prix')
 ->defaults(array(
  'action' => 'views',
  'directory'  => 'index',
  'controller' => 'news',
 ));

2. Условно динамический роут.
Route::set('news', '<category>(/<page>)', array('category' => '(akcii|news|something)', 'page' => '(asia\-pacific\-primring\-grand\-prix|some\-other\-page)'))
 ->defaults(array(
  'action' => 'views',
  'directory'  => 'index',
  'controller' => 'news',
 ));


Хотя у меня работает все и без маршрутизации, если его убрать из бутстрапа.

А вот с этим могут быть проблемы. Проверьте:
- Стоит ли кэширование роутов Коханы.
- Модифицирован ли файл .htaccess
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы