Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 12.09.2013 00:03:26

[L4] Указать что ссылка активная

Подскажите, а как наиболее правильно будет реализовать указание определенному тегу в blade-шаблоне класса 'active'?
Пока нашел лишь варианты с URI::is, но может быть можно как-то по-другому?

Не в сети

#2 12.09.2013 06:41:03

Re: [L4] Указать что ссылка активная

Проще всего именно через URI::is() или получением текущего маршрута и сравнением его URL. Как вариант — добавлять в свои маршруты установку где-то глобальной переменной в зависимости от выполняемого действия, но по-моему это лишнее, только повторяет URI::is() и другие.

Не в сети

#3 13.09.2013 14:53:37

Роман

Re: [L4] Указать что ссылка активная

Я делаю вот таким способом:

<li <? if (Route::currentRouteName() == 'login'): ?>class="active"<? endif; ?>><a href="<?=URL::route('login'); ?>">Login</a></li>

До него пробовал так, как советует Proger_XP, через URI::is(), мне не понравился этот способ тем, что он смотрит по URL, а не по названию маршрута.

#4 14.09.2013 12:19:19

Cheshirrski
masterМастер
Откуда: Днепр
Сообщений: 116
Статей: 2

Re: [L4] Указать что ссылка активная

Имхо, это лучше делать на клиенте джаваскриптом.

Не в сети

#5 14.09.2013 13:58:40

Re: [L4] Указать что ссылка активная

  1. Имхо, это лучше делать на клиенте джаваскриптом.

Тогда придётся дублировать логику и надеяться, что не забудешь её обновить при изменении кода генерации страниц. На мой взгляд вариант с URI::is() подходит, если не используются именованные маршруты, в противном случае — метод Романа.

Не в сети

Подвал раздела