Регистрация пользователя в Yii2. Часть 1

Регистрация пользователя в Yii2

От автора: приветствую вас, друзья. Мы продолжаем цикл статей, посвященных знакомству с фреймворком Yii2. В этой статье мы рассмотрим, как осуществляется регистрация пользователя в Yii2.

Для того, чтобы пользователь мог полноценно пользоваться сайтом, желательно предоставить ему личный кабинет и, соответственно, возможность авторизации. Ну а для того, чтобы работала авторизация, само собой, понадобится регистрация пользователя. В этом статье мы с вами начнем реализацию процесса регистрации в Yii.

Для начала нам потребуется таблица в БД. Пусть это будет таблица user. Вот запрос для создания этой таблицы:

Таблица очень проста и имеет всего четыре поля: id, username, password и role. В поля username и password мы будем записывать имя пользователя и его пароль. Поле role, которое по умолчанию имеет значение user, предназначено для записи роли пользователя, которого мы хотим добавить. Все просто.

Идем дальше. Следующим шагом будет создание модели, которая будет отвечать за форму регистрации. Назовем ее SignupForm:

Регистрация пользователя в Yii2

Полагаю, здесь все понятно и особо объяснять нечего. На всякий случай напомню. Модель имеет 2 поля, которые и будут отвечать за соответствующие поля формы регистрации. Метод rules определяет правила валидации. Ну а метод attributeLabels устанавливаете названия полей для тега label формы.

Теперь добавим экшен в нужный нам контроллер. В созданном экшене получим объект модели и напишем еще несколько строк кода. Экшен actionSignup я помещу в контроллер SiteController.

Регистрация пользователя в Yii2

Суть данного кода также должна быть понятна. Вначале мы проверяем, не является ли пользователь уже авторизованным. Если пользователь авторизован, т.е. это не гость, тогда мы сделаем редирект на главную страницу сайта. В целом, данная проверка не является на самом деле обязательной, но как мне кажется, если пользователь авторизован, то показывать ему форму регистрации не обязательно.

Далее мы получаем объект модели и передаем его в представление signup. Давайте создадим такое представление.

Регистрация пользователя в Yii2

Осталось протестировать написанный код. Давайте обратимся по адресу //yii2/site/signup и проверим наличие формы на странице.

Регистрация пользователя в Yii2

Супер! Форма имеется и ошибок нет. На этом мы пока остановимся и в следующей статье продолжим работать с регистрацией пользователей.

Больше о фреймворке вы можете узнать из наших бесплатных или платных уроков. Также создание простейшего блога на Yii2 можно посмотреть в этом цикле уроков.

Метки:

Похожие статьи:

Комментарии Вконтакте: