2016-09-02 3 views
0

see docs here about old inputLaravel 5.3 alte Eingangswerte immer leer

Route::post('/search/all/', function (Request $request) { 

//... 

    $products = $query->paginate(15); 
    $data = ['products' => $products, 
    'oldinput' => $request->all()]; 


    return view('inventory.search_products', $data); 
}); 

in der Ansicht:

dies funktioniert:

<input type="text" id="search_all" name="search_all" value="{{ $oldinput['search_all'] }}"> 

dies ist immer leer:

<input type="text" id="search_all" name="search_all" value="{{ old('search_all') }}"> 

Antwort

2

docs sagt Du solltest flash() rufen Sie dann old() Methode.

blinkend speichert die vorherige Anfrage in der Sitzung. so macht es Sinn, dass old(search_all) funktioniert nicht

+0

so für die Vollständigkeit: die Dokumente sind schlecht, weil die '-> withInput();' funktioniert nur für Weiterleitungen. Nicht zum Rendern von Ansichten. Also vor dem Rendern der Ansicht Aufruf '$ Anfrage-> flash();' – Toskan

+0

Gut bemerkt: ** Die Dokumente sind schlecht ** – Kwebble

2

ich die folgende Lösung vorschlagen:

return view('inventory.search_products', $data)->withInput(\Input::all()); 

Und Klinge können Sie auch \Input::old('search_all'); nennen.