2014-09-19 6 views
0

Есть ли способ, которым мне не нужно использовать несколько @include для вкладок для некоторых страниц.Laravel - Blade Template определяет разделы/include

Например я что-то вроде этого

В разделе/​​продукт-tab1.blade.php

<ul class="nav-tabs hidden-xs" role="tablist"> 
    <li><a href="/something1" role="tab">Category Name 1</a></li> 
    <li class="active"><a href="/something2">Category Name 2</a></li> 
</ul> 

В разделе/​​продукт-tab2.blade.php

<ul class="nav-tabs hidden-xs" role="tablist"> 
    <li><a href="/something4" role="tab">Something Name 4</a></li> 
    <li class="active"><a href="/something5">Something Name 5</a></li> 
    <li class="active"><a href="/something6">Something Name 6</a></li> 
</ul> 

В something1.blade.php я бы определил, как это показано на вкладках:

@include('product-tab1') 

В something4.blade.php шоу закладках:

@include('product-tab2') 

Также вы бы использовали, если оператор в файле представления для определения class="active" или нет? Он получит определенную переменную от контроллера.

ответ

1

Вы должны использовать условное условное обозначение if, короткое, если на самом деле это не так. Если для навигации может выглядеть примерно так (обратите внимание на это, если с классами Bootstrap, вы, вероятно, захотите использовать разные классы).

В идеале вы должны написать для этого помощника, но мы просто сделаем это с некоторой логикой на вашем взгляд. Просто зайдите в тег вы хотите установить активный класс, и поместите в.

class="{{ Request::is('your/path') ? 'active' : '' }}" 

Теперь это своего рода грязный, но это, безусловно, работает. В конце концов вы должны создать помощник, но вам действительно не нужен он для тестирования или небольших проектов.

Большой ресурс для вещей, как это Laracasts, вот соответствующее видео:

https://laracasts.com/lessons/active-states


Теперь для другого вопроса, я не знаю точно, что вы делаете и почему вы ссылаетесь на эти вкладки. Это очень трудно найти подходящее решение.

+0

Спасибо за ответ. Я буду смотреть это видео. В отношении вкладок несколько страниц будут иметь одинаковые разделы разделов. Несколько других страниц будут иметь разные разделы вкладок. Вот почему я хочу ссылаться на эти вкладки. Понимаю? – user1246800

+0

А, ну в этом случае вы могли бы создавать разные шаблоны для разных страниц, если это всего лишь два набора вкладок. Просто создайте шаблон с одним набором и один с другим и используйте их. Если это больше, как вы делаете, все в порядке. – aFreshMelon