Валидатор Laravel 5 проходит, когда он должен выйти из строя - PullRequest
0 голосов
/ 16 марта 2019

Я проверяю массив в Laravel 5.7, но валидатор проходит, когда я ожидаю, что он потерпит неудачу.

    $validator = Validator::make($request->all(), [

        'user_reg_email' => 'required|max:255|email|exists:users,email',
        'service_start_date' => 'required|before_or_equal:today',
        'service_end_date' => 'nullable|after:service_start_date',
        'role' => 'array|min:1|unique:provider_user,role,NULL,id,user_email,' . $request->user_reg_email . ',provider_domain,' . $request->prov,

    ]);

Полезная нагрузка указана ниже:

    {

        _token: "d5VYhirRAn3Zb9bCKHKQiuLNXkHfEP4hEs0bAZvj",
        prov: "email.com",
        user_reg_email: "john@email.com",
        service_start_date: "2019-03-03",
        service_end_date: null,
        role: [
            null
        ],
    }

Проверка роли прошла, но я ожидаю, что она не будет выполнена.Как получить ожидаемые результаты?

1 Ответ

1 голос
/ 16 марта 2019

'role' => 'array,...' подтвердит, что поле role является массивом, которым оно является.

Чтобы проверить элементы в массиве, вам также необходимо включить это правило:

'role.*' => unique:provider_user,...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...