Не разбираюсь в маршрутизации в фреймворке Kohana php - PullRequest
2 голосов
/ 07 сентября 2011

Попытка изучить Kohana, исходя из Asp.Net MVC 3. В MVC я привык к маршруту по умолчанию (очень похожему на маршрут по умолчанию в Kohana), работающему так:

Маршрут по умолчанию соответствует любомуиз них:

/
/Home
/Home/Index

Я ожидал, что это будет то же самое в Кохане, но, похоже, все, что он соответствует, это:

/

Вот мои настройки в bootstrap.php:

Kohana::init(array(
    'base_url'   => '/kohana',
                 'index_file' => FALSE
));

Route::set('default', '(<controller>(/<action>(/<id>)))')
    ->defaults(array(
        'controller' => 'home',
        'action'     => 'index',
    ));

Поэтому, если я введу localhost/kohana в адресную строку, я получу представление, вызываемое контроллером home и индекс действия (action_index).Но если я ввожу localhost/kohana/home/index, я получаю сообщение о том, что объект не существует.

Почему это так?Разве я не смогу ввести контроллер и действие в URL и получить правильную маршрутизацию?Так что, в принципе, я не знаю, как вводить URL-адреса, чтобы получить метод действия ...

Извините, если это глупый вопрос новичка, но я не могу разобраться с поиском в Google и просмотром документов Kohana... Я был немного испорчен тем фактом, что маршрутизация Asp.Net MVC всегда просто работала, поэтому мне никогда не приходилось узнавать об этом ...

1 Ответ

2 голосов
/ 07 сентября 2011

Переименуйте example.htaccess в .htaccess, откройте его и измените строку RewriteBase / на RewriteBase /kohana/.Проводник Windows, вероятно, не разрешит файл без имени, поэтому вам придется использовать другой файловый менеджер (например, Total Commander).

...