Yii2 advanced - включить красивый URL в модуле

Я изучаю, как работают модули в Yii2, и сейчас я создал следующий модуль: gdpr. Я могу получить доступ к следующему маршруту: /index.php?r=gdpr/user/index. Однако я хочу получить доступ к маршруту следующим образом: /gdpr/user/index. Как я могу этого добиться?

конфиг.php:

<?php
return [
    'components' => [
        'urlManager' => [
            'class' => 'yii\web\UrlManager',
            'enablePrettyUrl' => true,
            'enableStrictParsing' => true,
            'showScriptName' => false,
            'rules' => [
                ['class' => 'yii\rest\UrlRule', 'controller' => 'modules\gdpr\default'],
                ['class' => 'yii\rest\UrlRule', 'controller' => 'modules\gdpr\user'],
            ],
        ],
    ],
    'params' => [
        // list of parameters
    ],
];

person Jack Gelder    schedule 15.02.2019    source источник
comment
Вы смогли решить проблему, используя ответ ниже? или все еще ищу помощи   -  person Muhammad Omer Aslam    schedule 17.02.2019


Ответы (1)


Вам нужно настроить контроллеры таким образом:

'components' => [
    'urlManager' => [
        'class' => 'yii\web\UrlManager',
        'enablePrettyUrl' => true,
        'enableStrictParsing' => true,
        'showScriptName' => false,
        'rules' => [
            [
                'class' => 'yii\rest\UrlRule', 
                'controller' => ['gdpr/default', 'gdpr/user'],
            ],
        ],
    ],
],

См. https://www.yiiframework.com/doc/api/2.0/yii-rest-urlrule#$controller-detail

person rob006    schedule 15.02.2019