Używam Laravela 4. Chciałbym uzyskać dostęp do bieżącego adresu URL wewnątrz @if
warunku w widoku za pomocą silnika szablonów Laravel's Blade, ale nie wiem, jak to zrobić.
Wiem, że można to zrobić za pomocą czegoś takiego, <?php echo URL::current(); ?>
ale nie jest to możliwe w @if
instrukcji typu blade.
Jakieś sugestie?
laravel
laravel-4
laravel-blade
użytkownik2443854
źródło
źródło
Odpowiedzi:
Możesz użyć:
Request::url()
aby uzyskać bieżący adres URL, oto przykład:Laravel oferuje metodę sprawdzania, czy adres URL pasuje do wzorca, czy nie
Sprawdź powiązaną dokumentację, aby uzyskać różne informacje dotyczące wniosku: http://laravel.com/docs/requests#request-information
źródło
@if(Request::url()!=='/') <div class="bannerImage">{{ HTML::image('images/fullimage3.jpg') }}</div> @endif
url()
teraz zwraca instancję konstruktora . trzeba użyćurl()->current()
Możesz także użyć
Route::current()->getName()
do sprawdzenia nazwy trasy.Przykład: trasy.php
Widok:
źródło
Route::is('testing')
jest taki sam jakRoute::current()->getName() == 'testing'
.Route::is('testing')
- >> testowanie nie zadziałaRoute::is('test')
- >> test zadziałaRoute::current()->getName() == 'testing'
alias i adres URL są różneRoute::is()
sprawdza nazwę trasy, a nie ścieżkę.Route::currentRouteName()
Może powinieneś spróbować:
źródło
Zrobiłbym to w ten sposób:
gdzie „/ view” to nazwa widoku w route.php.
źródło
=='public'
== '/')
Request::url()
- niż otrzymasz pełny adres URLAby dostać się
current url
wblade
widoku można użyć następujących,Aby porównać, używając następującego kodu,
źródło
request()->getQueryString()
co jest bardzo pomocne w połączeniu zurl()->current()
tym, że pozostawia ciąg zapytania.Pomogło mi to w przypadku aktywnej klasy bootstrap Nav w Laravel 5.2 :
źródło
Trochę stary, ale działa w L5:
Przechwytuje to zarówno / mycategory jak / / mycategory / slug
źródło
{{ Request::is('clientes/*') ? 'active' : ''}}
Laravel 5.4
Funkcje globalne
źródło
request()->routeIs('...')
Osobiście nie próbowałbym uchwycić go w widoku. Nie jestem niesamowity w Laravel, ale wyobrażam sobie, że musisz wysłać swoją trasę do kontrolera, a następnie w kontrolerze przekazać zmienną (za pomocą tablicy) do swojego widoku, używając czegoś podobnego
$url = Request::url();
.Tak czy inaczej, jest to jeden ze sposobów.
EDYCJA: Właściwie spójrz na powyższą metodę, prawdopodobnie lepszy sposób.
źródło
Prosty pasek nawigacyjny z bootstrapem można wykonać jako:
źródło
Najprostszym sposobem jest użycie:
Request::url();
Ale tutaj jest złożony sposób:
źródło
Można to zrobić na dwa sposoby:
lub
źródło
Powinieneś spróbować:
źródło
Ustaw ten kod, aby był stosowany automatycznie dla każdego
<li>
+, którego potrzebujesz, aby użyćHTMLBuilder
biblioteki w swoim projekcie Laravelźródło
Możesz użyć tego kodu, aby uzyskać bieżący adres URL:
Dostaję to z dokumentów Laravela.
źródło
Kolejny sposób na napisanie if i else w Laravel przy użyciu ścieżki
Mam nadzieję, że to pomoże
źródło
zamiast używać URL :: path () do sprawdzania aktualnej lokalizacji ścieżki, możesz rozważyć Route :: currentRouteName (), więc na wypadek, gdybyś zaktualizował swoją ścieżkę, nie musisz przeglądać wszystkich stron, aby zaktualizować nazwa ścieżki ponownie.
źródło
Do nazwanych tras używam:
źródło
źródło
źródło
Spróbuj tego:
źródło
Spróbuj tego:
źródło
Jest wiele sposobów na osiągnięcie tego, z którego zawsze korzystam
źródło
Najprostszy sposób to
Ta kolumna przechwytuje kontakty /, kontakty / tworzenie, kontakty / edycja ...
źródło
W pliku Blade
źródło
Wypróbuj w ten sposób:
źródło