Страница 1 из 1

dmstr/yii2-redirect-module как его подключить

Добавлено: 2018.02.15, 12:26
webplus
Здравствуйте!
Нашел расширение https://github.com/dmstr/yii2-redirect-module и хочу спросить как его подключить для фронтенда и бекенда, в доках этого не указано! И выполнить миграции также не выходит: php yii migrate --migrationPath=@yii/dmstr/migrations/

Re: dmstr/yii2-redirect-module как его подключить

Добавлено: 2018.02.15, 13:35
Dominus
Миграция:

Код: Выделить всё

php yii migrate -p=@vendor/dmstr/yii2-redirect-module/migrations
Еще требует установки dmstr\bootstrap\Tabs

Еще в User должен быть организован метод getIsAdmin(), для администрирования.

Re: dmstr/yii2-redirect-module как его подключить

Добавлено: 2018.02.15, 13:43
webplus
А как его к бекенду подключить с ролью админа чтобы добавлять редиректы?

Re: dmstr/yii2-redirect-module как его подключить

Добавлено: 2018.02.15, 13:51
Dominus
Цепляется как я понял автоматом, в методе getIsAdmin() как раз и организовывается проверка на роль.
https://github.com/dmstr/yii2-redirect- ... er.php#L43
Для теста можно просто возвратить true:

Код: Выделить всё

// models/User
public function getIsAdmin()
{
    return true;
}
Еще правила не забыть прописать:

Код: Выделить всё

'redirects' => 'redirects',
У меня возникла другая проблема, с i18n, пока не разобрался.

Код: Выделить всё

Invalid Configuration – yii\base\InvalidConfigException
Unable to locate message source for category 'redirect'.
Добавление redirect.php рядом с app.php, в папку с переводами проблему не решило.

Re: dmstr/yii2-redirect-module как его подключить

Добавлено: 2018.02.15, 14:36
webplus
Запустил!
В файл common/config/bootstrap.php добавляем алиас:

Код: Выделить всё

Yii::setAlias('@admin-views', dirname(dirname(__DIR__)) . '/backend/views');
и в файл: common/config/main.php

Код: Выделить всё

    'components' => [
        'i18n' => [
            'translations' => [
                'redirect*' => [
                    'class' => 'yii\i18n\PhpMessageSource',
                    //'basePath' => '@app/messages',
                    //'sourceLanguage' => 'en-US',
                    'fileMap' => [
                        'app' => 'app.php',
                        'app/error' => 'error.php',
                    ],
                ],
            ],
        ],
    ],

Re: dmstr/yii2-redirect-module как его подключить

Добавлено: 2018.02.15, 14:48
Dominus
Да, запустилось)
И правила:

Код: Выделить всё

'urlManager' => [
    //...
    'rules' => [
        'redirects' => 'redirects/redirect/index',
        'redirects/<id:\d+>/<_a:[\w\-]+>' => 'redirects/redirect/<_a>',
        'redirects/<_a:[\w\-]+>' => 'redirects/redirect/<_a>',
    ],
],