Yii2 валидация

Yii2 валидация

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

Собственно, ответ на вопрос о необходимости правил валидации должен быть понятен уже из предыдущей статьи, в которой мы создали простейшую форму. Как мы увидели, без правил валидации данные формы просто так не загружаются в модель, работающую с формой. Это первая причина использовать валидацию форм. Вторая причина не менее очевидна: мы так или иначе производим различную валидацию. Так зачем нам что-то писать, если фреймворк предлагает нам большой выбор валидаторов, которыми мы и воспользуемся.

Здесь мы познакомимся лишь с некоторыми из валидаторов. С полным же их списком вы можете познакомиться в документации к фреймворку Yii2. Итак, правила валидации полей формы мы должны описывать в методе rules() модели формы. Данный метод должен возвращать массив, в котором к свойствам модели (полям формы) применены те или иные валидаторы. Давайте используем первый валидатор, которым пользуются чаще других — это валидатор required. Как следует из названия, валидатор проверяет, заполнено ли поле. Если поле окажется пустым — валидатор вернет ошибку валидации.

Yii2 валидация

Давайте теперь попробуем вернуться к форме на странице, поместить курсор в поля формы и после убрать курсор, не заполняя поле.

Yii2 валидация

Замечательно, не так ли? Валидация работает и при том работает даже на клиенте, что очень удобно. Коль у нас есть поле для ввода email, давайте используем еще один валидатор, который так и называется — email. Данный валидатор проверяет строку на соответствие формату адреса email.

Yii2 валидация

Как видим, новое правило валидации помогло проверить валидность email. Проверим теперь, сработает ли загрузка данных из формы в модель, отправив тестовые данные. Напомню, код действия, принимающего данные, будет пока что примерно таким:

Yii2 валидация

Как видим, данные прошли валидацию и были успешно загружены в модель формы, соответствующие свойства модели получили значения и мы можем работать с полученными данными. Но это уже тема следующих статей.

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

Метки:

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

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

Комментарии (2)