Нет текста сообщения об ошибке при использовании модуля Laravel Validator

Мне удается использовать модуль проверки Laravel в моем проекте следующим образом:

<?php

namespace Models;

use Illuminate\Database\Eloquent\Model as eModel;
use Illuminate\Validation\Factory as ValidatorFactory;
use Symfony\Component\Translation\Translator;

class AbstractModel extends  eModel {



public function validate($data)
{

$factory = new ValidatorFactory(new Translator('en'));
$v = $factory->make($data, $this->rules);

return $v;
}

public function save() {

$validator = $this->validate($this->toArray());

if(!$validator->passes())
{
$messages = $validator->messages();
print_r($messages);
die();
}

parent::save();
}

}

Если я пообедаю, то получу следующий вывод:

Illuminate\Support\MessageBag Object ( [messages:protected] => Array ( [email] => Array ( [0] => validation.required ) ) [format:protected] => :message )

«Validation.required»

Я не знаю, почему модуль не получает строки ошибок по умолчанию. Я уверен, что модуль работает нормально, потому что, если я попытаюсь определить некоторую пользовательскую строку, например:

    $message = array(
'unique' => 'FOO',
'email' => ':attribute WORNG!!!!!',
'required' => ':attribute MUST WRITE EMAIL!!!!'
);
$factory = new ValidatorFactory(new Translator('en'));
$v = $factory->make($data, $this->rules, $message);

Я получаю вывод:

Illuminate\Support\MessageBag Object ( [messages:protected] => Array ( [email] => Array ( [0] => email MUST WRITE EMAIL!!!! ) ) [format:protected] => :message )

Что мне не хватает?

0

Решение

Возможно, Переводчик требует локали ‘en_US’

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]