2015-07-09 6 views
26

Ich versuche, einen URL-Parameter aus einer Ansichtsdatei zu erhalten.Lumen: URL-Parameter in einer Blade-Ansicht erhalten

Ich habe diese url:

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

und Ansicht Datei mit dem Namen example.blade.php.

Von der Steuerung kann ich den Parameter a mit $request->input('a') erhalten.

Gibt es eine Möglichkeit, einen solchen Parameter aus der Ansicht zu erhalten (ohne ihn vom Controller zur Ansicht zu übergeben)?

+0

Sie konnten die '$ _GET []' Array zugreifen, aber ich wouldn Ich empfehle das. Sie sollten es vom Controller zur Ansicht weitergeben, nicht sicher, warum Sie nicht wollen. –

+0

@TimLewis Ich würde vermeiden, es vom Controller zu übergeben, denn wenn ich viele Parameter habe, könnte es nervig sein, und es sollte schneller sein, einen Weg zu haben, es direkt aus der Sicht zu bekommen. – Andrea

+0

Ich denke, es kann mühsam sein, viele Variablen vom Controller zur Ansicht zu definieren und weiterzuleiten, aber ich würde jeden Tag mühselig über schlechte Praktiken hinwegdenken ... –

Antwort

50

Das funktioniert gut:

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

Wo a der URL-Parameter ist.

Sehen Sie hier mehr: http://blog.netgloo.com/2015/07/17/lumen-getting-current-url-parameter-within-a-blade-view/

+0

das wird alle params 'app ('request') -> request-> all()' – dav

+0

was wäre der weg wenn meine URL ist wie http: // locahost: 8000/example/10 und ich möchte den Wert bekommen 10. @Andrea –

+0

@SajeebAhamed Besser Sie fragen dies als eine neue Frage: http://StackOverflow.com/questions/ask – Andrea

5

Sie können öffentlich entlarven Input Fassade über einen Alias ​​in config/app.php:

'aliases' => [ 
    ... 

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

und Zugang url $_GET Parameterwerte die Fassade direkt im Blade-Ansicht/Vorlage:

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

Das funktioniert gut für mich:

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

Ex: Paginierung param auf Blade-Ansicht zu erhalten:

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

Der kürzeste Weg habe ich verwendet

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