Laravel 5 überprüfen, ob die aktuelle URL mit der Aktion übereinstimmt

8

Ich erstelle derzeit meine Anwendungs-URLs mit {{action('Namespace\Class@method')}} . Wie würde ich prüfen, ob die aktuelle Seitenanforderung der aktuellen Aktion Namespace\Class@method ? Zugeordnet ist?

Ich möchte etwas wie:

machen %Vor%

Wie würde ich das in Laravel 5 erreichen?

    
Ozzy 24.05.2015, 15:20
quelle

4 Antworten

8

Dafür gibt es keine eingebaute Methode, aber Sie können den aktuellen Aktionsnamen mit Route::currentRouteAction() abrufen. Leider gibt diese Methode einen vollständigen Namespace-Klassennamen zurück. So erhalten Sie etwas wie:

%Vor%

Sie können entweder nach dem suchen oder etwas wie ends_with verwenden, damit Sie nicht den vollständigen Pfad angeben müssen:

%Vor%

Sie können auch Benennen Ihrer Routen mit 'as' => 'route.name' in Betracht ziehen. Dies würde Ihnen erlauben, zu verwenden: Route::is('route.name')

    
lukasgeiter 24.05.2015 15:34
quelle
2

Ich weiß, das ist alt, aber für das, was es wert ist.

Laravel hat ein paar integrierte Hilfsmethoden zum Verweisen auf URLs Aktion und Route.

>

action

Ihre Routendatei würde so aussehen.

%Vor%

Ihre Klingenansicht würde so aussehen

%Vor%

route

Wenn Sie benannte Routen verwenden.

%Vor%     
whoacowboy 06.07.2015 22:50
quelle
2

Eigentlich hatte ich es auf den folgenden Code vereinfacht:

%Vor%

Das setzt voraus, dass Sie Routen benannt haben. Das ist in erster Linie eine gute Idee, weil Sie migth die URL einer Aktion ändern, ohne Ihr gesamtes Projekt zu ändern, um die Links zu dieser Aktion zu ändern.

    
Daniel Doinov 28.07.2015 10:50
quelle
0

So mache ich es ohne benannte Routen

%Vor%

Dies ist keine perfekte Lösung, aber es funktioniert in den meisten Fällen

    
Sajjad Ashraf 04.06.2017 08:30
quelle

Tags und Links