Laravel по-русски

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

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

#1 06.06.2018 11:45:38

Как лучше организовать настройки шаблона (views)

Добрый день.

laravel 5.6

Не могу понять как лучше сделать.

Есть в views переменная.
Допустим
with_sidebar

По умолчанию она должна быть true,
но для некоторых страниц - например для главной false

Во вьюхе понятно - можно сделать например так:

        @if($with_sidebar)
            <section id="primary" class="content-area">
                @include('layouts/main')
            </section><!-- #primary -->

            @include('layouts/sidebar')
        @else
            <section id="primary" class="content-area" style="width: 100%">
                @include('layouts/main')
            </section><!-- #primary -->
        @endif

Из вью тоже в общем понятно - просто передаем ее как false

А где лучше задать значение по умолчанию,
ну и может вообще весь список таких возможных параметров?

Не в сети

#2 06.06.2018 16:54:27

Re: Как лучше организовать настройки шаблона (views)

В зависимости от верстки. Я в нужных шаблонах наследовался от разных шаблонов.
@extends('with_sidebar_layout')
@extends('without_sidebar_layout')

Если хочется сайтбар отключать в рантайме, в зависимости от каких-либо факторов - то тут надо обсуждать предметно (от чего зависит сайдбар). Простых решений, насколько я знаю, laravel и blade не предоставляют.

Не в сети

#3 07.06.2018 08:45:27

Re: Как лучше организовать настройки шаблона (views)

В зависимости от верстки. Я в нужных шаблонах наследовался от разных шаблонов.@extends('with_sidebar_layout')@extends('without_sidebar_layout')

Да пожалуй для этого случая это более правильно - разные шаблоны.

Но все равно вопрос- где хранить какие нить сквозные переменные для приложения.

Не в сети

#4 07.06.2018 14:09:20

Re: Как лучше организовать настройки шаблона (views)

Но все равно вопрос- где хранить какие нить сквозные переменные для приложения.

Как правило добавляют какой нибудь ComposerServiceProvider и добавляют туда
https://laravel.com/docs/5.6/providers
https://laravel.com/docs/master/views#p … a-to-views
View::share

Но, если, скажем, сайдбар с рекламой адсенса надо отключать на продвигаемых статьях - то тут проблемы, как и у любого шаблонизатора.
Хорошие решения есть, но они громоздкие, встречал я их только в специфичных проектах, где гибкость шаблона крайне важна.

Не в сети

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