Come reindirizzare alla pagina del modulo, con i parametri POST
specificati, se la mia azione modulo genera un'eccezione?Come reindirizzare a form con input - Laravel 5
risposta
È possibile utilizzare il seguente:
return Redirect::back()->withInput(Input::all());
Se stai usando Form Request Validation, questo è esattamente il modo laravel vi reindirizzerà indietro con gli errori e la data di ingresso.
Estratto dal \Illuminate\Foundation\Validation\ValidatesRequests
:
return redirect()->to($this->getRedirectUrl()) ->withInput($request->input()) ->withErrors($errors, $this->errorBag());
Inoltre, puoi usare 'indietro()'. http://laravel.com/docs/5.1/responses#redirects – lesssugar
No, non mantiene i parametri di input – infomaniac
Certo, lo so: 'return redirect() -> back() -> withInput();' It's solo una macro a portata di mano. – lesssugar
scrivere vecchia funzione sui vostri campi valore ad esempio
<input type="text" name="username" value="{{ old('username') }}">
Questo funziona per Laravel 5.1 – TodStoychev
Grazie! Sto usando Laravel 5.2 e questo funziona anche per me. Insieme alla funzione 'old()' nel nostro template blade, dobbiamo anche usare 'withInput()' nel nostro controller per farlo funzionare. Like => 'if ($ validate-> fail()) return redirect (" somepage ") -> withErrors ($ validate) -> withInput();' –
Qualsiasi idea su come eseguire questa operazione per 'select ' –
ho gestire le eccezioni di convalida in laravel 5.3 come questo. Se usi Laravel Collective, visualizzerà automaticamente gli errori accanto agli input e se usi laracasti/flash mostrerà anche il primo errore di convalida come avviso.
Handler.php
render:
public function render($request, Exception $e)
{
if ($e instanceof \Illuminate\Validation\ValidationException) {
return $this->handleValidationException($request, $e);
}
(..)
}
E la funzione:
protected function handleValidationException($request, $e)
{
$errors = @$e->validator->errors()->toArray();
$message = null;
if (count($errors)) {
$firstKey = array_keys($errors)[0];
$message = @$e->validator->errors()->get($firstKey)[0];
if (strlen($message) == 0) {
$message = "An error has occurred when trying to register";
}
}
if ($message == null) {
$message = "An unknown error has occured";
}
\Flash::error($message);
return \Illuminate\Support\Facades\Redirect::back()->withErrors($e->validator)->withInput();
}
laravel 5:
return redirect(...)->withInput();
per tornare solo:
return back()->withInput();
' return back() -> withInput(); ' –
Nice! Stavo passando' $ request-> all() 'a questo metodo, ma è bene sapere che non è necessario. –
Nel codice HTML è necessario utilizzare value = {{ old('') }}
. Senza utilizzarlo, non è possibile recuperare il valore perché la sessione verrà archiviata nella cache.
Come per una convalida nome, questo essere-
<input type="text" name="name" value="{{ old('name') }}" />
Ora, è possibile ottenere il valore dopo la presentazione che se c'è errore di reindirizzamento.
return redirect()->back()->withInput();
Come @infomaniac dice, è anche possibile utilizzare il Input class
direttamente,
return Redirect::back()->withInput(Input::all());
Add: Se si mostra solo il campo specifico, quindi utilizzare $request->only()
return redirect()->back()->withInput($request->only('name'));
Spero, potrebbe funzionare in ogni caso, grazie.
grazie. –
- 1. Laravel 5 Classe 'form' non trovato
- 2. laravel validazione dei form ajax con campo di input
- 3. Come salvare/reindirizzare l'output da Laravel 5 Comando Artisan?
- 4. laravel-5 passa variabile a JavaScript
- 5. Laravel 5 - Dopo il login reindirizzare alla pagina precedente
- 6. Laravel 4/5 modulo di ricerca come
- 7. come ottenere Tutti gli input del POST in laravel 5
- 8. Come reindirizzare tutte le richieste a public/folder in laravel 5
- 9. Come usare a volte escludere a laravel 5 richiesta classe
- 10. laravel 5 con Postgres SQL
- 11. Convalida serie laravel 5
- 12. Laravel 5 - FatalErrorException: Classe "Utente" non trovata
- 13. laravel 5 ide autocompleto
- 14. Laravel 5: come convalidare l'input datetime da 4 campi di input?
- 15. laravel 5 - tipi Convalida Mime
- 16. Laravel 5 come utilizzare il parametro get dall'URL con il metodo di accesso del controller
- 17. Passaggio di attributi di dati HTML 5 a Play! input di form
- 18. ie javascript form invia con input file
- 19. Switch in Laravel 5 - Blade
- 20. Reset INPUT senza FORM
- 21. required_if Laravel 5 validation
- 22. Come reindirizzare a un'altra pagina dopo 5 minuti?
- 23. Aggiunta di Foundation 5 a Laravel 4
- 24. Laravel 5 - Pretty paginator
- 25. laravel 5 MethodNotAllowedHttpException in RouteCollection.php linea 201:
- 26. tavolo Alter laravel 5 con migrazione
- 27. Form array di input angolari
- 28. AngularJS + Laravel 5 Authentication
- 29. laravel 5 custom 404
- 30. Come reindirizzare input e output standard con Bash
Sapete che ho dovuto cambiare la domanda solo perché mi avete chiesto e risposto allo stesso tempo. – whoacowboy
Ho pensato che sarebbe stato utile per gli altri.Non ho trovato la soluzione così ho scavato attraverso il codice sorgente per vedere come viene gestito automaticamente con Form Validation – infomaniac
Lo apprezzo sempre. – whoacowboy