что это значит в Laravel 5.7 (контракт валидатора) - PullRequest
0 голосов
/ 26 ноября 2018

Из руководства по обновлению Laravel 5.7:

Вероятность воздействия договора с валидатором: очень низкая
Метод валидации был добавлен к контракту Illuminate \ Contracts \ Validation \ Validator:

/**
 * Run the validator's rules against its data.
 * @return array
 */
public function validate(); 

Если вы реализуете этот интерфейс, вам следует добавить этот метод в вашу реализацию.

Итак?Что добавляет этот метод в вашу реализацию ?У меня есть некоторые проверки в моем коде, такие как:

$this->validate($request, [
    // rules are placed here...
]);

и теперь PhpStorm кричит необработанное исключение проверки ...

1 Ответ

0 голосов
/ 26 ноября 2018

Это в основном означает, что если у вас есть собственная реализация Illuminate\Contracts\Validation\Validator, вам нужно реализовать этот метод, потому что в противном случае вы получите Fatal error, как вы можете видеть в этом фрагменте .Реализация этого контракта по умолчанию: Illuminate\Validation\Validator.

Поскольку вы не получаете фатальную ошибку, ваша проблема должна быть в другом месте.Может быть, ваша проблема связана с вложенной проверкой?Согласно руководству по обновлению, произошли фундаментальные изменения.Или вы случайно обновили версию PHP?

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