Laravel — сообщения об ошибках, не преобразующиеся в фактическое сообщение об ошибке, начинаются с «проверки».

У меня проблемы с попыткой заставить проверку формы работать в Laravel, что странно, потому что обычно это просто работает.

В моей пользовательской модели я создал правила для проверки:

public static $rules = array(
'firstname'=>'required|min:2|alpha',
'lastname'=>'required|min:2|alpha',
'email'=>'required|email|unique:users',
'password'=>'required|alpha_num|between:8,12|confirmed',
'password_confirmation'=>'required|alpha_num|between:8,12',
'telephone'=>'required|between:10,12',
'admin'=>'integer'
);

В моем пользовательском контроллере я определяю действия, только если проверка проходит успешно, если нет, пользователь перенаправляется обратно с ошибками:

public function postCreate() {
$validator = Validator::make(Input::all(), User::$rules);

if ($validator->passes()) {
$user = new User;
$user->firstname = Input::get('firstname');
$user->lastname = Input::get('lastname');
$user->email = Input::get('email');
$user->password = Hash::make(Input::get('password'));
$user->telephone = Input::get('telephone');
$user->save();

return Redirect::to('users/signin')
->with('message', 'Thank you for creating a new account. Please sign in.');
}

return Redirect::to('users/create-account')
->with('message', 'Something went wrong')
->withErrors($validator)
->withInput();
}

Произошли следующие ошибки:

В представлении я отображаю ошибки, если они существуют:

@if($errors->has())
<div id="form-errors">
<p>The following errors have occurred:</p>

<ul>
@foreach($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div><!-- end form-errors -->
@endif

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

validation.required
validation.required
validation.required
validation.required
validation.required
validation.required

Вместо:

The firstname field is required.
The lastname field is required.
The email field is required.
The password field is required.
The password confirmation field is required.
The telephone field is required.

Если кто-то может подсказать, почему это происходит или чего мне не хватает, то это будет с благодарностью!

7

Решение

Если это сработало для вас раньше, вам следует проверить, есть ли у вас сообщения, определенные в app\lang\en\validation.php или случайно вы изменили место действия приложения и не определили сообщения для него. Есть много возможностей.

7

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

У меня была похожая проблема, и проблема для меня заключалась в том, что я случайно удалил
Ресурсы / языки / EN / validation.php

4

У меня была похожая проблема, когда я установил и мою локаль, и локаль резервной копии на локаль, у которой не было файла проверки в app.php. Попробуйте установить в качестве резервного языкового стандарта en или тот, который, как вы уверены, существует.

2

У меня была эта проблема.
Проверить lang каталог, он должен быть помещен в resource каталог.

Я перетащил каталог lang в другой каталог, а затем получил тот же ответ проверки, что и вы. Исправление было просто перенести его обратно в каталог ресурсов.

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