@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.
@hoyt.jerde
Для того чтобы убрать название контроллера модуля из URL в Yii2, можно использовать правила маршрутизации (URL-правила) в компоненте UrlManager. Ниже приведен пример настройки маршрутизации для модуля с именем "admin":
1 2 3 4 5 6 7 |
'urlManager' => [ 'rules' => [ 'admin' => 'admin/default/index', 'admin/<action:w+>' => 'admin/default/<action>', 'admin/<controller:w+>/<action:w+>' => 'admin/<controller>/<action>', ], ], |
В этом примере:
После настройки URL-правил, можно использовать URL вида "/admin" для доступа к действию "index" модуля "admin", URL вида "/admin/действие" для доступа к соответствующему действию в модуле "admin" и URL вида "/admin/контроллер/действие" для доступа к соответствующему контроллеру и действию в модуле "admin".