justcoded / yii2-settings
此包已废弃,不再维护。未建议替代包。
Yii2 设置组件
1.0.1
2019-07-13 11:57 UTC
Requires
- php: >=7.0.0
- yiisoft/yii2: ~2.0.11
This package is auto-updated.
Last update: 2023-10-13 21:49:25 UTC
README
Yii2 设置扩展
Yii应用参数的替代方案。易于使用的组件来存储应用程序设置。目前仅支持数据库存储。包含可使用的基设置表单模型和控制台操作。
安装
推荐通过composer安装此扩展。
运行以下命令:
php composer.phar require --prefer-dist justcoded/yii2-settings "*"
或将其添加到您的composer.json文件的require部分:
"justcoded/yii2-settings": "*"
配置
数据库迁移
在使用此扩展之前,我们还需要准备数据库。
您可以将迁移路径添加到控制台配置中,然后运行migrate
命令
'migrate' => [ 'migrationPath' => [ '@vendor/justcoded/yii2-settings/migrations' ], ],
或者运行以下命令:
php yii migrate --migrationPath=@vendor/justcoded/yii2-settings/migrations
组件设置
要使用设置组件,您需要在应用程序配置中配置组件数组
'components' => [ 'settings' => [ 'class' => 'justcoded\yii2\settings\components\DbSettings', ], ],
并将组件名称添加到引导数组中
'bootstrap' => ['log', 'settings'],
用法
// set value Yii::$app->settings->set('section_name', 'key', 'value'); // get value $value = Yii::$app->settings->get('section_name', 'key');
可以使用模型作为一些设置分组对象。为此,您需要将modelsMap数组添加到组件的配置中
'settings' => [ 'class' => 'justcoded\yii2\settings\components\DbSettings', 'modelsMap' => [ 'section1' => 'app\models\MySettingsForm1', 'section2' => 'app\models\MySettingsForm2', ], ],
向控制器中添加操作以获取具有根据模型属性键的设置表单
public function actions() { return [ 'actionName' => [ 'class' => 'justcoded\yii2\settings\actions\SettingsAction', 'modelClass' => 'app\models\MySettingsForm1', ], ]; }
并创建一个包含某些活动表单的视图。(您可以从扩展的“views”文件夹中复制模板)
现在您可以以更好的方式获取设置
$value = Yii::$app->settings->section1->myPropertyName;
如果您覆盖Yii/Application类并指定正确的PHPDoc注释,这非常有用。这样,IDE将突出显示所有部分和属性。
示例
您可以在我们的Yii2入门套件上查看示例。