Mam problemy z próbą uzyskania formularza sprawdzania poprawności działającego w języku Laravel, co jest dziwne, ponieważ zwykle po prostu działa.Laravel - komunikaty o błędach nie tłumaczące na rzeczywisty komunikat o błędzie, zacznij od "sprawdzania poprawności".
W moim modelu użytkownika stworzyli zasady walidacji:
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'
);
W moim kontroler użytkownika zdefiniować działania tylko wtedy, gdy walidacja przechodzi, jeśli nie zostaje przekierowany z powrotem z błędami:
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();
}
następujące błędy wystąpiły:
W widoku i wyświetli błędy jeśli takowe istnieją:
@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
Problem, który mam jest, że wyjście z tego przy składaniu pustego formularza jest:
validation.required
validation.required
validation.required
validation.required
validation.required
validation.required
Zamiast:
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.
Jeśli ktoś mógłby sugerować, dlaczego tak się dzieje i co Brak mi tego, byłoby to bardzo docenione!
Posiadanie tego samego problemu w Laravel 5 i nie wiem, dlaczego ... – Lloople
Ja też! W Laravel 5, ale tylko w niektórych środowiskach/serwerach –
@Lloople Dość smutne, właściwie mnie zniechęciło Laravel ... Nieźle, bo uczę się więcej Javascript teraz :) Jeśli znalazłeś odpowiedź, proszę to napisać? –