2015-07-09 7 views
26

Sto cercando di ottenere un parametro url da un file di visualizzazione.Lumen: ottieni il parametro URL in una vista Blade

ho questo url:

http://locahost:8000/example?a=10 

e vista file chiamato example.blade.php.

Dal controller è possibile ottenere il parametro a con $request->input('a').

C'è un modo per ottenere tale parametro dalla vista (senza doverlo passare dal controller alla vista)?

+0

Si potrebbe accedere al [] array '' $ _GET, ma io wouldn raccomandare di farlo. Dovresti passarlo dal controller alla vista, non è sicuro del motivo per cui non vuoi. –

+0

@TimLewis Eviterei di passarlo dal controller perché se ho molti parametri potrebbe essere fastidioso, e dovrebbe essere più veloce avere un modo per ottenerlo direttamente dalla vista. – Andrea

+0

Suppongo che possa essere noioso definire e passare molte variabili dal controller alla vista, ma vorrei prendere tediosità su cattive pratiche ogni giorno ... –

risposta

50

Questo metodo funziona bene:

{{ app('request')->input('a') }} 

Dove a è il parametro url.

Vedere più qui: http://blog.netgloo.com/2015/07/17/lumen-getting-current-url-parameter-within-a-blade-view/

+0

questo restituirà tutti i parametri 'app ('richiesta') -> richiesta-> tutto()' – dav

+0

quale sarebbe la strada se il mio URL è come http: // locahost: 8000/esempio/10 e voglio ottenere il valore 10. @Andrea –

+0

@SajeebAhamed Meglio chiedilo come una nuova domanda: http://stackoverflow.com/questions/ask – Andrea

5

È possibile esporre pubblicamente Input facciata tramite un alias in config/app.php:

'aliases' => [ 
    ... 

    'Input' => Illuminate\Support\Facades\Input::class, 
] 

E l'accesso url $_GET valori dei parametri utilizzando la facciata direttamente all'interno vista Lama/modello:

{{ Input::get('a') }} 
4

Questo funziona per me:

{{ app('request')->input('a') }} 

Es: per ottenere l'impaginazione param in mostra lama:

{{ app('request')->input('page') }} 
20

La via più breve ho usato

{{ Request::get('a') }}