Как разрешить дефисы в именах контроллеров и действий в Kohana 3

Я хотел бы использовать дефисы в своих URL-адресах, но поскольку контроллеры — это классы, а действия — методы, в них, конечно, не может быть дефисов. Я думаю, например, что about-us выглядит намного лучше в URL, чем about_usили aboutus.

Есть ли хороший и чистый способ сделать это в Kohana 3.2?

Примечание. Я видел, как это можно сделать с помощью параметров действия, и для этого вы можете просто создать маршрут с регулярным выражением, разрешающим их. Но здесь я говорю об именах контроллеров и действий.


person Svish    schedule 30.10.2011    source источник
comment
возможный дубликат Как иметь URL-адреса с тире в Kohana 3 .х   -  person laurent    schedule 30.10.2011
comment
Это про тире в параметрах. Я говорю об именах контроллеров и действий.   -  person Svish    schedule 30.10.2011
comment
Нет, то, что вы хотите (и вы это написали), это дефисы в ваших URL-адресах. Имена контроллеров и действий, очевидно, не могут иметь тире, поскольку они являются именами классов и функций PHP.   -  person laurent    schedule 30.10.2011
comment
Еще один вопрос здесь - stackoverflow.com/questions/7404646/   -  person laurent    schedule 30.10.2011
comment
@Laurent: Нет, я хочу то, о чем я просил в своем вопросе. дефисы в именах контроллеров и действий. И, как я уже сказал в самом первом предложении, я знаю, что в коде явно не может быть дефисов, поскольку классы и имена функций этого не допускают. И это единственная причина, по которой я задаю этот вопрос в первую очередь :)   -  person Svish    schedule 30.10.2011


Ответы (1)


Вы можете использовать лямбда-маршрут или перегрузить методы Request::controller() и Request::action().

person Darsstar    schedule 31.10.2011
comment
Лямбда-маршрут, возможно, может быть хорошим решением. Не знал, что такие существуют. - person Svish; 01.11.2011