2016-06-27 8 views
0

ich eine Laravel Form haben, die wie so Daten über eine POST-Anforderung an einen Controller einreicht ...Laravel der withInput() und withErrors() leer sind

public function store() 
{ 
    $result = Validator::make(request() -> all(), $this -> rules); 

    if ($result -> fails()) 
    { 
     return back() -> withInput() -> withErrors($result); 
    } 
} 

Allerdings, wenn ich zurück bin umgeleitet, den Zugriff auf Eingabedaten über die 'alte' Hilfsmethode gibt nichts zurück, ebenso wie das Lesen von Daten aus $ errors.

Ich glaube, die Sitzungsdaten sind verloren (möglicherweise aufgrund einer sekundären Weiterleitung?).

Ich habe meine Routen-Datei in Artisan überprüft und die Web-Middleware wird nur einmal auf den Routen ausgeführt. Ich verwende auch den Datenbanksitzungstreiber.

Irgendwelche Ideen? Ich benutze Laravel 5.2.39

Antwort

0

In letzter Zeit treffe ich diesen Fehler, und ich fand die Lösung ... Statt setzen Ihre Routen innerhalb von dieser

Route::group(['middleware' => ['web']], function() { }); 

Entfernen Sie es einfach und es funktioniert einwandfrei. Die Middleware "web" wird zweimal geladen.

0

Verwenden return redirect() -> zurück() -> withInput() -> withErrors ($ result);

+0

Danke, aber ich habe das auch versucht ... löst das Problem nicht :( – John1984

+0

Probieren Sie $ request-> flash(); in der Funktion vor der Rückkehr. –

+0

Nein, das hat es auch nicht behoben. Ich habe eine neue Laravel-Installation erstellt und ein einfaches Formular getestet und es funktioniert einwandfrei.Es ist klar, dass etwas in meinem speziellen Projekt nicht stimmt.Ich werde noch mehr erkunden und sehen, ob ich es festnageln kann ... – John1984

0

versuchen diese

die Eingaben mit Fehlern zurückzukehren
$validator = Validator::make($request->all(), $rules); 

if ($validator->fails()) { 
    // fails, then return false 
    return redirect()->back()->withErrors($validator->messages())->withInput($request->all()); 
} 
0

die Frage stellte sich heraus, um meine Verwendung von Bootstrap Validator zusammenhängt. Ich muss immer noch herauszufinden, warum, aber es scheint, Dinge zu wischen ...