kamelher / laravel-settings
laravel应用程序的简单设置包
1.1.1
2021-08-29 11:41 UTC
Requires
- php: >=5.6.4
README
一个为laravel应用程序提供必需设置的laravel包。
支持laravel >= 5.2
安装
- composer
将以下内容添加到您的composer文件中。
"kamelher/laravel-settings": "dev-master"
或运行以下命令
composer require kamelher/laravel-settings
- config/app.php [在laravel 5.5中不需要此步骤,因为包自动发现功能]
将您的提供者添加到providers数组中
'providers' => [
// ...
\KAMEL\Settings\app\Providers\SettingServiceProvider::class
// ...
],
并将Setting类添加到aliases数组中
'aliases' => [
// ...
'Settings' => \KAMEL\Settings\app\Facades\Setting::class
// ...
],
- 发布
运行以下命令
php artisan vendor:publish
config/settings.php
和 resources/vendor/settings
将添加到您的laravel项目中。
- 迁移
您可以在 config/settings.php
中设置表名
return [
// ...
// settings package table name the default is `settings`
'table' => 'settings'
// ...
];
默认表名为 settings
。然后运行迁移命令
php artisan migrate
settings表将迁移到您的数据库中。
包选项
发布包后,会添加新的配置文件 config/settings.php
,根据您的业务需求更新值
return [
//settings route
'route' => 'settings',
'middleware' => ['web', 'auth'],
// hidden records not editable from interface when set to false
'show_hidden_records' => false,
//javascript format
'date_format' => 'mm/dd/yyyy',
// number of digits after the decimal point
'number_step' => 0.001,
// upload path for settings of type file
'upload_path' => 'uploads/settings',
// valid mime types for settings of type file
'mimes' => 'jpg,jpeg,png,txt,csv,pdf',
'per_page' => 10,
// settings package table name the default is `settings`
'table' => 'settings'
];
如何使用
设置的默认路由为
your-domain/settings
它将显示您拥有的所有设置的列表,您可以从那里管理您的设置。
在代码中获取设置值时,可以使用门面像这样
验证键是否存在
\Settings::has('SETTING_KEY');
\Settings::get('SETTING_KEY'); \Settings::get('SETTING_KEY', 'Default value if not exist');
例如
\Settings::get('SITE_TITLE', 'Laravel Settings');
您还可以使用星号来获取一组设置。例如
\Settings::get('MAIL_*');
将返回所有以MAIL开头的设置的数组
[
'MAIL_DRIVER' => 'smtp',
'MAIL_HOST' => 'mailtrap.io',
'MAIL_PORT' => '2525',
]
如果是文件类型,将返回完整路径
config('settings.upload_path') . '/' . $value;
例如
uploads/settings/site_logo.png
===================================