ronasit / shared-data
Provided middleware for implementing of shared data for all views.
Requires
- php: >=5.3.7
- laravel/framework: >=5.2.0
This package is auto-updated.
Last update: 2022-04-22 16:13:54 UTC
README
Данный плагин является плагином для флеймворка Laravel и нужен для того, чтоб обеспечить доступ из blade-темплейтов вашего приложения доступ к общим глобальным переменным, которые вы сами можете определить.
Для того, чтоб интегрировать плагин в ваш проект требуется
-
Добавить его в композер
а. В блок required добавить сам плагин
"ronasit/shared-data": "master-dev"
б. Выполнить в консоли в папке проекта
composer update -
Интегрировать плагин в проект Laravel
а. Добавить сервис-провайдер в блок prividers файла config/app.php
RonasIT\Support\SharedData\SharedDataServiceProvider::class
б. Выполнить в консоли команду
php artisan vandor:publish
в. Добавить SharedDataMiddleware::class в файл app/Http/Kernel.php
Вы можете добавить его ко всем роутам или только для определенных.
Я рекомендую добавлять его в переменную $routeMiddleware
'shared-data' => SharedDataMiddleware::class
И потом прописывать его как middleware для конкретных групп роутов.Например: Route::group(['middleware' => ['shared-data']], function() { Route::get('/', ['uses' => 'HomeController@index']); ...... });
-
Сконфигурировать плагин.
а. В папке app/Services должен появиться файл SharedDataService.
требуется заменить у него namespace на тот, который используется в вашем
проекте, чтоб избежать конфликта имён.
namespace App\Services;
В методе getData() этого класса вы
можете определить какие данные будут видны во всех темплейтах.
б. В файле config/shared-data.php требуется добавить имя вашего сервиса
'service' => App\Services\SharedDataService::class
Теперь если в методе getData() вы вернёте массив например такой
public function getData() {
return [
'variable' => 123
];
}
То в темплейте вы можете её вставить просто через {{ $variable }}