Маршрутизация в Кохане без указания имени контроллера
Я хочу создать маршрутизацию в Kohana Framework версии 3.3.1.
Я хочу, чтобы URL был похож на http://www.test.com/male/London и внутренне они будут работать так, как показано ниже.
http://www.test.com/list/search/London
Я хочу скрыть контроллер и имя действия из URL.
Любая помощь с благодарностью.
2 ответа
Это может быть достигнуто с помощью маршрутов в bootstrap.php и / или файла init.php модуля.
Например, вы можете настроить маршрут для (male/<location>)
и тогда ваш контроллер по умолчанию будет list
и действие search
,
Затем вы можете получить доступ к местоположению в контроллере / действии, используя $this->request->param('location');
для использования в любом запросе БД, который вам нужен.
Смущенный? Прочитайте этот раздел документов Кохана, и все это должно иметь смысл.
Вы должны сделать два изменения в вашем файле:
Загрузочный файл:
Route::set('list', 'male/<id>' ) ->defaults(array( 'controller' => 'list', 'action' => 'search', ));`
И во-вторых, вы можете сделать свою ссылку как
href="<?php echo URL::site('male/'.id, TRUE) ?>">
И этот файл маршрута должен быть выше в вашем файле маршрута по умолчанию.