Опубликовано

Laravel собственное правило валидации

Если есть необходимость зарегистрировать собственное правило валидации, которые генерирует несколько разных ошибок вам поможет следующий код

<?php
Validator::extend('custom', function ($attribute, $value, $parameters, $validator) {
    if ((int)$value === 1) {
        $validator->messages()->add($attribute, 'Message error one');
    }
    if ((int)$value === 2) {
        $validator->messages()->add($attribute, 'Message error two');
    }
    // Всегда возвращаем true. Если у на хоть один из if сработал выше,
    // то для валидируемого поля уже добавилась ошибка и отрабатывать 
    // метод addFailure смысла нет. Мы его эмулировали сами.
    return true; 
});

 

Добавить комментарий

Ваш e-mail не будет опубликован.