Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 21.08.2019 16:07:26

5.1 кастомная валидация

версия ларавел 5.1
в проекте используется валидация через app/Http/Requests

public function rules()
    {
       return [
            'name' => 'min:3|max:128|plainText',
            'lastname' => 'min:3|max:128|plainText',
            'email' => 'unique:users,email,' . $user_id . '|email',
            'login' => 'required|min:3|max:64|plainText|unique:users,login,',
            'password' => [
                'confirmed',
                'min:8',
                'max:64',
                'regex:/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/',
                function ($attribute, $value, $parameters)
                {
                    foreach ($this->stopWords as $word) {
                        if (strpos($value, $word) !== false) {
                            //$this->word = $word;
                            
                            $fail($attribute.' is invalid.');
                        }
                    }

                    //return false;
                }

            ]
		
    }

как мне добавить свое правило валидации для поля password?
перерыл весь интернет
или советуют создать свой rule, которого нету в классах
или делать через Validator::extend, при этом extend тоже нету
есть простое решение через анонимную ф-ю в этом чудо ларавел?

Изменено ru (21.08.2019 16:47:12)

Не в сети

#2 21.08.2019 19:17:04

Re: 5.1 кастомная валидация

https://stackoverflow.com/questions/284 … -laravel-5 тут нашел решение
но теперь вопрос- как мне вывести в сообщения об ошибке фразу - пароль содержит запрещенное слово $word, где $word это слово из списка запрещенных слов?
также как проверить что пароль не содержит логин? как передать логин в проверку?

Не в сети

Подвал раздела