Kohana Помогите с роутингом

fonbaron

Велосипедист
Добрый день.
Подскажите как сделать что бы когда вводится не верный url отрабатывал контроеллер по умолчанию
PHP:
Route::set('index', '(/<action>(/<id>))')
    ->defaults(array(
        'controller' => 'index',
        'action'     => 'index'
    ));
 

fonbaron

Велосипедист
Если такова роута не написано например htp://site/qwe/qwe/qwe/qwe/qwe
 

hell0w0rd

Продвинутый новичок
А в кохане нет событие аля not_found_route? Или исключение? На него и подписывайся
 

флоппик

promotor fidei
Команда форума
Партнер клуба
Вариантов много. Если тебе нужно именно то, что ты описал — просто последним самым роутом сделай маршрут совпадающий с любым урлом:
PHP:
Route::set('catch-all', '(<stuff>)', array('stuff' => '(.*)'))
    ->defaults(array(
        'controller' => 'index',
        'action'     => 'index'
    ));
или даже
PHP:
Route::set('catch-all', '(.*)')
    ->defaults(array(
        'controller' => 'index',
        'action'     => 'index'
    ));
— если тебе пофиг, что там в урле.
Если это тебе нужно для 404 — то нужно ловить ексешпн, ессно.
 

fonbaron

Велосипедист
Вариантов много. Если тебе нужно именно то, что ты описал — просто последним самым роутом сделай маршрут совпадающий с любым урлом:
PHP:
Route::set('catch-all', '(<stuff>)', array('stuff' => '(.*)'))
    ->defaults(array(
        'controller' => 'index',
        'action'     => 'index'
    ));
или даже
PHP:
Route::set('catch-all', '(.*)')
    ->defaults(array(
        'controller' => 'index',
        'action'     => 'index'
    ));
— если тебе пофиг, что там в урле.
Если это тебе нужно для 404 — то нужно ловить ексешпн, ессно.
У меня не работает данный пример (
 
Сверху