Não tem mistério.
Se você estiver desenvolvendo um módulo, defina as rotas no init.php do módulo, se for na aplicação defina no bootstrap.php (antes da rota padrão que vem no arquivo).
Exemplos:
A rota a seguir reconhece: noticias/ e notícias/pagina, onde página é um número e não é obrigatório (entre parênteses)
O parametro "pagina" você recupera no controller usando $this->request->param('pagina');
Route::set('noticias/pagina', 'noticias(/<pagina>)',array(
'pagina' => '[0-9]+'
))
->defaults(array(
'controller' => 'noticias',
'action' => 'lista',
'pagina' => 1
));
A rota a seguir reconhece: imoveis/cidade/bairro/id
perceba que em "defaults" foi setado o parametro "directory", para que você não precise colocar o controller sempre na raiz da pasta controllers.
Route::set('imoveis/detalhe/identificador', 'imoveis/<cidade>/<bairro>/<id>',array(
'cidade' => '[a-zA-z0-9-_]+',
'bairro' => '[a-zA-z0-9-_]+',
'id' => '[0-9]+',
))
->defaults(array(
'directory' => 'imobiliaria',
'controller' => 'imoveis',
'action' => 'detalhe',
'id' => '',
));
Você também pode usar o directory, o controller e a action como parametros da sua rota, ficando algo assim:
A rota a seguir reconhece: imoveis/detalhes/id ou imoveis/impressao/id
Route::set('imoveis/action/identificador', 'imoveis/<action>/<id>',array(
'action' => 'detalhes|impressao',
'id' => '[0-9]+',
))
->defaults(array(
'controller' => 'imoveis',
'action' => 'detalhes',
'id' => '',
));
A página de documentação do kohana é bem detalhada e possui exemplos:
Espero ter ajudado.
@rafaelget
Olá Pessoal, bom, estou utilizando o kohana 3.2 a pouco tempo e não consegui entender como utilizar rotas, mas creio que é um recurso muito legal. Alguém poderia indicar um exemplo básico?