@SokolovArtur

Как динамический добавить правила валидации в Yii2?

Использую ActiveForm. Некоторые поля формы берутся из базы данных. Там хранятся их тип, название и правила валидации. Поля отличаются и имеют разную характеристику. Как для этих полей задать правила валидации? Чтобы фреймворк их понимал, как на стороне сервера, так и на стороне клиента.

Пребывал использовать DynamicModel. Но классу нужно передать атрибут со значением поля. Значит подходит только для серверной валидации. Как быть с клиентской?
  • Вопрос задан
  • 531 просмотр
Пригласить эксперта
Ответы на вопрос 2
sanchezzzhak
@sanchezzzhak
Ля ля ля...
С клиент вальвацией нужно добавлять js код
www.yiiframework.com/doc-2.0/guide-input-validatio...

в моделях можете назначить правила под сценарии
Ответ написан
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
используйте для этого DynamicModel
$model = DynamicModel::validateData(compact('name', 'email'), [
        [['name', 'email'], 'string', 'max' => 128],
        ['email', 'email'],
    ]);

вот доки:
www.yiiframework.com/doc-2.0/yii-base-dynamicmodel.html

Делал так генератор форм(анкет), при этом данные о полях и их настройки хранятся в базе в json
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы