visual-ideas/laravel-site-settings
最新稳定版本:1.11.2
Composer 安装命令:
composer require visual-ideas/laravel-site-settings
包简介
Easy Laravel nested settings (stored in MYSQL) package with MoonShine Laravel Admin GUI
README 文档
README
Easy laravel cached settings (stored in MYSQL) package with MoonShine/Filament Laravel Admin GUI
Installation
You can install the package via composer:
composer require visual-ideas/laravel-site-settings
You must run the migrations with:
php artisan migrate
You can publish the config file with:
php artisan vendor:publish --provider="VI\LaravelSiteSettings\LaravelSiteSettingsProvider" --tag="config"
This is the contents of the published config file:
return [ 'cache_key' => env('LSS_CACHE_KEY','laravel_site_settings_data'), // Set to true if you're using Filament (https://filamentphp.com/) 'filament' => false, ];
Usage
You can use this package as default laravel config() function!
function settings($key = null, $default = null) { if (is_null($key)) { return app('Settings')->all(); } if (is_array($key)) { return app('Settings')->set($key); } return app('Settings')->get($key, $default); }
or Blade directive @settings
@settings('group.setting')
For PHPStorm you can set this blade directive with This instruction
or as part of native Laravel config()
@config('settings.group.setting')
Not working in console!
Update settings
You can use models VI\LaravelSiteSettings\Models\SettingGroup and VI\LaravelSiteSettings\Models\Setting
or set settings values with the settings() function:
settings(['group.setting' => 'Value']); settings(['setting' => 'Value']);
Usage with MoonShine Laravel Admin panel
Please see MoonShine
You can use settings in your MoonShine admin panel, like this:
MenuGroup::make('Settings', [ MenuItem::make( 'Setting groups', new \VI\LaravelSiteSettings\MoonShine\Resources\SettingGroupResource(), 'heroicons.outline.wrench-screwdriver' ), MenuItem::make( 'Settings', new \VI\LaravelSiteSettings\MoonShine\Resources\SettingResource(), 'heroicons.outline.wrench' ), ], 'heroicons.outline.cog-8-tooth'),
Usage with Filament Laravel Admin panel
Please see Filament
You can use settings in your Filament admin panel!
Just change config file:
//... // Set to true if you're using Filament (https://filamentphp.com/) 'filament' => true, //...
Seeding settings
I recommend saving the settings in the seeders using the orangehill/iseed package:
php artisan iseed setting_groups,settings
But you can use seeder or migration to set your settings
settings([ ['group.setting1' => 'Value1'], ['group.setting2' => 'Value2'], ['group.setting3' => 'Value3'], ['setting1' => 'Value4'], ['setting2' => 'Value5'], ['setting3' => 'Value6'], ['setting4' => 'Value7'], ['setting5' => 'Value8'] ]);
Credits
License
The MIT License (MIT). Please see License File for more information.
统计信息
- 总下载量: 432
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 14
- 点击次数: 4
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2022-12-11