Маршрутизация в Кохане без указания имени контроллера

Я хочу создать маршрутизацию в 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'); для использования в любом запросе БД, который вам нужен.

Смущенный? Прочитайте этот раздел документов Кохана, и все это должно иметь смысл.

Вы должны сделать два изменения в вашем файле:

    1. Загрузочный файл:

      Route::set('list', 'male/<id>' )
      ->defaults(array(
      'controller' => 'list',
      'action'     => 'search',
      ));` 
      
    1. И во-вторых, вы можете сделать свою ссылку как

      href="<?php echo URL::site('male/'.id, TRUE) ?>">
      

И этот файл маршрута должен быть выше в вашем файле маршрута по умолчанию.

Другие вопросы по тегам