Пользовательские правила проверки Laravel

Я изучаю Framework Laravel и действительно наслаждаюсь им, однако у меня есть небольшая проблема в "Валидаторе". Мне нужно сделать собственное правило. Я искал документацию и на некоторых сайтах в интернете и сумел сделать это:

1º Я создал папку под названием "app / validators /"

2º Я создал файл с именем "CpfValidation.php" внутри этой папки с классом.

3º В файле "app / start / global.php" я включил строку:

app_path (). '/ validators'

4 В моем контроллере я вставляю код:

Validator::extend('validaCpf', 'CpfValidation@validaCpf');

$validacao = Validator::make(

    array(
        'nome_completo' => Input::get('nome_completo'),
        'cpf'           => Input::get('cpf'),
        'email'         => Input::get('email'),
        'telefone'      => Input::get('telefone'),
        'logradouro'    => Input::get('logradouro'),
        'estado'        => Input::get('estado')
    ),

    array(
        'nome_completo' => 'required|min:2',
        'cpf'           => 'required|validaCpf',
        'email'         => 'required|email',
        'telefone'      => 'required|min:14',
        'logradouro'    => 'required',
        'estado'        => 'required'
    ),

    array(
        'nome_completo.required' => 'Você não informou o seu nome!',
        'nome_completo.min'      => 'O seu nome deve ter pelo menos 2 letras!',
        'cpf.required'           => 'Você não informou o seu CPF!',
        'cpf.validaCpf'          => 'O CPF informado não parece ser válido!',
        'email.required'         => 'Você não informou o seu e-mail!',
        'email.email'            => 'O e-mail informado não parece ser válido!',
        'telefone.required'      => 'Você não informou o seu telefone!',
        'telefone.min'           => 'O Telefone informado não parece ser válido!',
        'logradouro.required'    => 'Você não informou o seu endereço!',
        'estado.required'        => 'Você não informou o seu estado!'
    )

);

Однако при запуске все работает нормально, за исключением того, что несмотря на работу validaCpf, не отображается сообщение, которое я хотел. Он отображает только: "validation.valida_cpf" вместо "O CPF informado não parece ser válido!"

1 ответ

Вы можете переопределить функцию сообщений, чтобы применить свой собственный контент сообщений. Например, проверьте это:

public function messages()
{
    return [
        'title.required' => 'A title is required',
        'body.required' => 'A message is required',
    ];
}

Вы можете найти его в официальной документации Laravel5.1. Документацию Laravel смотрите в этом пункте. Настройка сообщений об ошибках.

Другие вопросы по тегам