Laravel пользовательский валидатор - PullRequest
0 голосов
/ 08 марта 2020

У меня есть форма, где пользователь будет публиковать только адрес электронной почты. Я хочу проверить эти входные данные, например:

, если это электронное письмо существует в таблице, тогда данные определенного c столбца (например, is_valid) должны быть нулевыми.

если электронная почта не существует, то должна быть проверена

У меня есть решение для первого условия, но я не могу найти ничего, чтобы объединить оба.

Для первого условия мое решение:

Rule::exists('table_name')->where(function ($query) {
    $query->where('is_valid', null);
});

Как написать правило для обоих условий?

1 Ответ

1 голос
/ 08 марта 2020

Для этого вы можете использовать что-то вроде уникального правила:

Rule::unique('table_name', 'email')->whereNotNull('is_valid');

Вышеуказанное должно удовлетворять обоим условиям, то есть

Электронная почта не существует или вообще не существует, если is_valid не равно нулю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...