Как привильно использовать yii eachvalidator?

суть вопроса в следующем использую select2 с множественным выбором получаю в запросе следующий массив
должен получить
'thema' => [ 0 => 'детктив' 1 => 'фантасика' 2 => 'роман' ]


мне надо что бы было выбрано объектов не меньше трех но не больше 7 использую each валидатор следующим образом
['thema','each','rule'=>['min'=>2,'max'=>5]]
но плучаю ошибку
Invalid validation rule: a rule must be an array specifying validator type.

и массив выглядит вот так
'thema ' => [ 0 => '1' 1 => '2' 2 => '4' ]
почему не подскажите ? И как правильно?
  • Вопрос задан
  • 252 просмотра
Решения вопроса 1
slo_nik
@slo_nik Куратор тега Yii
Добрый день.
Вряд ли у Вас что-то получится, ибо ошибка говорит о том, что "правило должно быть массивом, определяющим тип валидатора".
Пример:
['thema','each','rule'=>['integer']]; // определяет, что каждое значение должно быть целым числом
['thema','each','rule'=>['match', 'pattern' => '/[a-z]/is']]; // проверяет каждое переданное значение на соответствие введённых символов

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

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

Похожие вопросы