Ich befolge strenge Praktiken wie 5.2 Dokumente, aber die Validierung macht mich verrückt.Sitzung Flash-Nachrichten nicht irgendwo trotz Codierung
1) Dies ist ein Code-Snippet, das ich in der Steuerung direkt nach dem $ property-> save() habe; Funktion
Session::flash('success', 'property table filled');
Session::flash('errors', 'These are the errors');
etc
zweites Problem ist, dass die Validate-Methode, wenn es Fehler gibt, es zurück zum Formular erstellen Seite zurückkehrt, aber statt die vorhandenen Daten in den Feldern verbindlich, wischt es alles aus , damit ich das Formular von Grund auf neu starten muss. Außerdem ist es keine Nachrichten keine Fehler
public function store(Request $request){
$this->validate($request, array(
'country' => 'bail|required|max:100',
'region' => 'bail|required|max:100',
etc
Gemäß der Dokumentation nicht angezeigt, dies allein sollte, im Falle fehlschlagen, passieren, mit dem Create-Methode oben (der einen wieder zurück, dass das Formular zeigt die Post erstellen) und eine Reihe von Fehlern ausgeben. Da ich eine Resource Controller verwenden, alle Routen sind in einer Zeile enthalten ist, und auch, alle Controller und Sachen sind in der Web-Middleware:
Route::group(['middleware' =>'web'], function(){
Route::auth();
Route::get('/', function() {
return view('welcome');
});
Route::get('/home', '[email protected]');
Route::resource('property', 'PropertyController');
});
Dies ist fehlerlos Schnipsel ich in der habe partials, die im Layout enthalten ist, so dass es Nachrichten (erfolgreich oder fehlgeschlagen) für jede Seite angezeigt wird, die eine Sitzung hat:
@if(Session::has('success'))
<div class="alert alert-success" role="success">
<strong>Success: </strong> {{Session::get('success')}}
</div>
@endif
<div class="row">
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
Wenn stattdessen das Speichern der Daten in der Tabelle Datenbank erfolgreich war, es wird immer noch keine Erfolg Flash-Session-Nachricht aussprechen.
Frage:
es irgendwelche Fehler in den übermittelten Daten, warum nicht angezeigt alles und warum es mir alle Felder nicht leer. Die Wirkung des Leerens der Felder ist die gleiche Sache, die nicht passieren würde, wenn Sie die Seite aktualisieren (ausgefüllte Felder bleiben gefüllt), sondern wenn Sie auf das URL-Feld des Browsers klicken und es drücken.