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

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

от hoyt.jerde , в категории: PHP , 25 дней назад

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

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

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

от elda , 22 дня назад

@hoyt.jerde 

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


В файле конфигурации приложения, вы можете настроить правила маршрутизации для модулей, используя компонент UrlManager. Например, если вы хотите скрыть название контроллера модуля в URL для модуля с именем "admin", вы можете добавить следующий код в конфигурационный файл:

1
2
3
4
5
6
'urlManager' => [
    'rules' => [
        'admin/<controller:w+>/<action:w+>' => 'admin/<controller>/<action>',
        'admin/<action:w+>' => 'admin/default/<action>',
    ],
],


Эти правила маршрутизации перенаправляют запросы вида admin/controller/action на соответствующий контроллер и действие в модуле "admin". Если вы хотите использовать действие по умолчанию в модуле "admin", вы можете использовать правило 'admin/<action:w+>' => 'admin/default/<action>'.


После этого, вы можете использовать URL вида /admin/action для доступа к действию в модуле "admin", без указания названия контроллера в URL.