praveen-osits / laravel-settings
为 Laravel 应用程序提供的简单设置包
2.0
2020-07-09 20:31 UTC
Requires
- php: >=5.6.4
This package is not auto-updated.
Last update: 2024-09-28 20:25:30 UTC
README
这是一个为 Laravel 应用程序提供所需设置模块的 Laravel 包。
支持 Laravel >= 5.2
安装
- composer
将以下内容添加到您的 composer 文件中。
"praveen-osits/laravel-settings": "2.0"
或者运行以下命令
composer require praveen-osits/laravel-settings
- config/app.php [在 Laravel 5.5 中无需此步骤,因为包自动发现功能]
将您的新提供者添加到 providers 数组中
'providers' => [
// ...
\SMATAR\Settings\App\Providers\SettingServiceProvider::class
// ...
],
并将 Setting 类添加到别名数组中
'aliases' => [
// ...
'Settings' => \SMATAR\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
设置表将迁移到您的数据库。
包选项
发布包后,将添加新的配置文件 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
演示
演示网站
http://settings.esolution-inc.com/
===================================