Использование сторонних модулей очень сильно упрощает жизнь. Все, что необходимо - это найти модуль, изучить инструкцию по установке и настройке. Часто бывают сложные модули с огромнейшим функционалом и приходится долго вникать в их работу. Но это все равно быстрее, чем писать функционал с нуля, проверять работоспособность, тестировать, выявлять баги и недоработки.
Как назвать не пойму. Обычно на сайте есть юзерка. Это некий функционал, который позволяет вести учет пользователей сайта (регистрация, авторизация, редактирование профиля, восстановление пароля и т.д.). Вот сейчас и установим.
Инструкция по установке обычно валяется рядом с файлами модуля на гитхабе.
Чтобы подключить модуль в проект на YII2, заходим в корень проекта и выполняем команду (известный модуль user)
composer require dektrium/yii2-user
При установке модуля могут быть загружены файлы других модулей или расширений, без которых интересующий нас модуль не может работать. Composer самостоятельно разрешает зависимости, на то он и пакетный менеджер. Все установленные зависимости прописываются в файле composer.json
Если надо подключить сразу несколько модулей или расширений, то их можно самостоятельно прописать в composer.json, а потом выполнить команду composer update и все зависимости подгрузятся.
После того, как все необходимые файлы были скачаны, открываем /frontend/config/main.php и в секцию modules добавляем (изменяем) строку, которая укажет какой файл модуля подключать. В принципе в инструкции по установке все это есть :)
'modules' => [
'user' => [
'class' => 'dektrium\user\Module',
],
],
Далее выполняем миграции, как указано в инструкции. Соглашаемся на выполнение 12 файлов миграций.
php yii migrate/up --migrationPath=@vendor/dektrium/yii2-user/migrations
У меня уже была создана таблица users, поэтому миграции dektrium выдали ошибку. Оказалось, что в /console/migrations был файл миграции, который создает таблицу users. Чтобы сохранить код, в методе up() в самом начале добавляем return true; и перезапускаем миграции php yii migrate/redo 2 (2 это значит 2 миграции, если остался файл для создания таблицы post). После перезапуска добавляем, также return true; в самом начале метода down(), чтобы не затереть таблицу, которую создаст миграция от dektrium.
При успешном выполнении миграций, можно зайти по
необходимым урлам из инструкции и познакомиться с возможностями модуля.
Т,О, мы быстренько добавили в проект юзерку (регистрация, авторизация и т.д.). Сейчас в этом модуле также доступна авторизация через соцсети, если такую возможность настроить в конфиге.
Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
|