Как убрать название контроллера модуля из url в yii2?

Пользователь

от ian.heidenreich , в категории: PHP , 2 года назад

Как убрать название контроллера модуля из url в yii2?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от bart , 2 года назад

@ian.heidenreich 

Чтобы убрать название контроллера модуля из URL в Yii2, можно использовать конфигурацию URL-правил в файле конфигурации приложения (например, в файле config/web.php).

  1. Добавьте следующий код в массив компонента urlManager:
1
2
3
'rules' => [
    '<module>/<controller>/<action>' => '<module>/<controller>/<action>',
],


  1. Замените <module> на название вашего модуля.


Теперь, когда вы будете использовать URL вида /module/controller/action, название модуля не будет отображаться в URL. Например, URL /admin/user/index будет обрабатываться как /<module>/<controller>/<action> и отображаться как /user/index.

Пользователь

от urban_will , год назад

@ian.heidenreich 

Небольшая поправка в ответе:


1 2


'module:w+/controller:w+/action:w+' => '//',


В этом случае название модуля будет игнорироваться и URL /admin/user/index будет обрабатываться как /user/index.