Как сделать поле пустым, если другое поле имеет определенное значение и должно существовать, если другие поля не соответствуют проверке - PullRequest
0 голосов
/ 15 июня 2019

как сделать поле пустым, если другое поле имеет определенное значение и должно существовать, если другие поля не соответствуют проверке

if_null:other_field,value
Validator::extend('null_if', function ($attribute, $value, $parameters, $validator) {
            $other = $parameters[0];
            $other_value = array_get(request()->toArray(), $other);
            if ($parameters[1] == $other_value) {
                $validator->addReplacer('null_if', function($message, $attribute, $rule, $parameters){
                    $oth = str_replace([':other'], $parameters[0], $message);
                    $her = str_replace([':value'], $parameters[1], $oth);
                    return $her;
                });

                return empty($value); // false
            }
            return true;

Я поставил это

if ($parameters[1] == $other_value && !empty($value)) {

но все равно не действует

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