Установить глобальную переменную / направление текста в промежуточном программном обеспечении Laravel - PullRequest
0 голосов
/ 21 мая 2018

У меня есть промежуточное ПО, которое считывает языковые настройки из базы данных и применяет соответствующие настройки языка приложения:

public function handle($request, Closure $next)
{

    $lang = SystemSetting::find('System Language');
    \App::setLocale($lang->value);

    return $next($request);
}

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

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

    @if ($RTL)
    {{ Html::style('css/rtl/app-rtl.css') }}
    @else 
    {{ Html::style('css/app.css') }}
    @endif

1 Ответ

0 голосов
/ 21 мая 2018

Вы можете использовать фасад фасада, который вы можете прочитать больше о здесь .

Это позволяет вам напрямую подготовить любые данные для представлений и сделать их там доступными.

<?php

use Illuminate\Support\Facades\View;

public function handle($request, Closure $next)
{

    $lang = SystemSetting::find('System Language');
    \App::setLocale($lang->value);

    View::share('rtl', true);

    return $next($request);
}

Но я бы посоветовал заглянуть в этот сеанс .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...