Параметр ID в маршрутизации Kohana 3 имеет значение NULL - PullRequest
1 голос
/ 24 февраля 2012

У меня есть правило, определенное в маршрутизации Kohana 3, но параметр ID не передается методу.

У меня есть это в файле bootstrap.php:

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

и контроллер

public function action_home($id=NULL)
{
    echo $id;
}

Но в следующем примере ссылки идентификатор обычно равен NULL:

http://example.com/index/123

Идентификатор должен быть 123, но это не так.Я не знаю почему.

Ответы [ 2 ]

5 голосов
/ 24 февраля 2012

Да, маршруты Ko3 смешны.

Попробуйте удалить этот $ id = null, поскольку K03 назначит переменные в качестве параметров:

public function action_home()
{
    echo $this->request->param('id');
}

Посмотрите, поможет ли это.

1 голос
/ 27 февраля 2012

Они были удалены из Kohana, смотрите: http://dev.kohanaframework.org/issues/4357

Как сказал Зомбор:

Они просто не вписываются в конструкцию Kohana.Они не должны были быть включены в 3.0 в первую очередь.

Также не предполагается обрабатывать все маршруты с маршрутом по умолчанию.Вы должны определить столько, сколько вам нужно.

...