Ich verwende Laravel 4. Ich möchte @if
mit der Blade-Template-Engine von Laravel auf die aktuelle URL in einer Bedingung in einer Ansicht zugreifen, weiß aber nicht, wie das geht.
Ich weiß, dass es mit so etwas gemacht werden kann, <?php echo URL::current(); ?>
aber es ist innerhalb einer @if
Blade-Anweisung nicht möglich .
Irgendwelche Vorschläge?
laravel
laravel-4
laravel-blade
user2443854
quelle
quelle
Antworten:
Sie können Folgendes verwenden
Request::url()
, um die aktuelle URL abzurufen. Hier ein Beispiel:Laravel bietet eine Methode, um herauszufinden, ob die URL mit einem Muster übereinstimmt oder nicht
Überprüfen Sie die zugehörige Dokumentation, um andere Anforderungsinformationen zu erhalten: http://laravel.com/docs/requests#request-information
quelle
@if(Request::url()!=='/') <div class="bannerImage">{{ HTML::image('images/fullimage3.jpg') }}</div> @endif
url()
Gibt jetzt eine Builder-Instanz zurück . muss verwendenurl()->current()
Sie können auch
Route::current()->getName()
Ihren Routennamen überprüfen.Beispiel: route.php
Aussicht:
quelle
Route::is('testing')
ist das gleiche wieRoute::current()->getName() == 'testing'
.Route::is('testing')
- >> Testen wird nicht funktionierenRoute::is('test')
- >> Testen, es wird funktionierenRoute::current()->getName() == 'testing'
Alias und URL sind unterschiedlichRoute::is()
nicht nach dem Pfad.Route::currentRouteName()
Vielleicht sollten Sie dies versuchen:
quelle
Ich würde es so machen:
Dabei ist '/ view' der Name der Ansicht in route.php.
quelle
=='public'
== '/')
Request::url()
- als Sie die vollständige URL erhaltenUm
current url
in dieblade
Ansicht zu gelangen , können Sie Folgendes verwenden:So wie Sie mit folgendem Code vergleichen können,
quelle
request()->getQueryString()
was in Verbindung mit sehr hilfreich ist,url()->current()
da dadurch die Abfragezeichenfolge weggelassen wird.Dies wird mir für die Bootstrap Active Nav-Klasse in Laravel 5.2 geholfen :
quelle
Ein bisschen alt, aber das funktioniert in L5:
Dies erfasst sowohl / mycategory als auch / mycategory / slug
quelle
{{ Request::is('clientes/*') ? 'active' : ''}}
Ich persönlich würde nicht versuchen, es in die Ansicht zu greifen. Ich bin bei Laravel nicht besonders beeindruckend, aber ich würde mir vorstellen, dass Sie Ihre Route an einen Controller senden und dann innerhalb des Controllers die Variable (über ein Array) mit so etwas wie in Ihre Ansicht übergeben müssen
$url = Request::url();
.Eine Möglichkeit, es trotzdem zu tun.
EDIT: Schauen Sie sich die obige Methode an, wahrscheinlich einen besseren Weg.
quelle
Laravel 5.4
Globale Funktionen
quelle
request()->routeIs('...')
Eine einfache Navigationsleiste mit Bootstrap kann wie folgt ausgeführt werden:
quelle
Der einfachste Weg ist zu verwenden:
Request::url();
Aber hier ist ein komplexer Weg:
quelle
Dafür gibt es zwei Möglichkeiten:
oder
quelle
Sie sollten dies versuchen:
quelle
Stellen Sie diesen Code so ein, dass er automatisch für jedes
<li>
+ angewendet wird, das Sie zur Verwendung derHTMLBuilder
Bibliothek in Ihrem Laravel-Projekt benötigenquelle
Mit diesem Code können Sie die aktuelle URL abrufen:
Ich bekomme das aus Laravel-Dokumenten.
quelle
Eine andere Möglichkeit, if und else in Laravel mithilfe von path zu schreiben
Ich hoffe es hilft
quelle
Anstatt die URL :: path () zu verwenden, um Ihren aktuellen Pfad zu überprüfen, sollten Sie die Route :: currentRouteName () berücksichtigen. Nur für den Fall, dass Sie Ihren Pfad aktualisieren, müssen Sie nicht alle Seiten durchsuchen , um sie zu aktualisieren den Pfadnamen noch einmal.
quelle
Für benannte Routen verwende ich:
quelle
quelle
quelle
Versuche dies:
quelle
Versuche dies:
quelle
Es gibt viele Möglichkeiten, eine davon zu erreichen, die ich immer benutze
quelle
Der einfachste Weg ist
Diese Spalte erfasst die Kontakte /, Kontakte / erstellen, Kontakte / bearbeiten ...
quelle
In der Blade-Datei
quelle
Versuchen Sie Folgendes:
quelle