@BloodVIRUS

Как выполнить правило только после выполнения предыдущих?

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

Такое возможно?
  • Вопрос задан
  • 81 просмотр
Решения вопроса 1
proudmore
@proudmore
skipOnError => true в валидаторе и расположить его в rules ниже - они выполняются по очереди сверху вниз
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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