Я хочу отметить меню навигации как «активное», когда URL-адрес соответствует запросу.Laravel 5.3: Как включить меню навигации как активное, когда запрос соответствует URL-адресу (с языком)
Это работает отлично:
<div class="sidebar">
<ul class="sidebar-menu">
<li {{{ (Request::is('en/dashboard') ? 'class=active' : '') }}}>
<a href="/{{ App::getLocale() }}/dashboard">
<i class="fa fa-dashboard"></i> <span>{{ trans('sidebar.dashboard') }}</span>
</a>
</li>
<li {{{ (Request::is('en/settings') ? 'class=active' : '') }}}>
<a href="/{{ App::getLocale() }}/settings">
<i class="fa fa-gears"></i> <span>{{ trans('sidebar.settings') }}</span>
</a>
</li>
</ul>
</div>
К сожалению, это работает только и маркировки меню навигации, когда URL используется код языка «EN». Но как заменить статическую строку «en» на что-то более динамичное?
Я уже пытался решить эту проблему, используя этот код, но он не работает:
<li {{{ (Request::is('{{ App::getLocale() }}/dashboard') ? 'class=active' : '') }}}>
Какой самый лучший способ решить эту проблему?
И как вы определяете язык и, например, изменяете меню навигации, например «Настройки», на немецкую версию «Einstellungen»? – user2966991
Это обрабатывается с помощью 'trans()', с папками для 'en',' fr', ect и т. Д. (Не уверен, что такое код языка для немецкого), и тогда у вас будет такая ссылка: '
Вам нужно будет прочитать docs https://laravel.com/docs/5.3/localization, чтобы лучше справляться с локализацией –