wdmg / yii2-options
将应用选项(设置)存储在数据库中
1.7.0
2023-06-24 20:04 UTC
Requires
- wdmg/yii2-base: ^1.3.0
- wdmg/yii2-helpers: ^1.4.1
- wdmg/yii2-selectinput: ^1.0.9
- yiisoft/yii2: ^2.0.35
README
Yii2 Options
在数据库中存储应用选项(运行时自动加载,并可从 Yii:$app-param[] 访问)
此模块是 Butterfly.СMS 内容管理系统的一个组成部分,但也可以作为独立扩展使用。
版权所有(c)2019-2023 W.D.M.Group, Ukraine
要求
- PHP 5.6 或更高版本
- Yii2 v.2.0.35 及最新版本
- Yii2 Base 模块(必需)
- Yii2 SelectInput 小部件
安装
要安装此模块,请在控制台中运行以下命令
$ composer require "wdmg/yii2-options"
配置数据库连接后,在控制台中运行以下命令
$ php yii options/init
然后选择要执行的操作
- 应用所有模块迁移
- 回滚所有模块迁移
- 扫描并添加所有应用选项
迁移
在任何情况下,您都可以通过以下命令在控制台中执行迁移并创建初始数据
$ php yii migrate --migrationPath=@vendor/wdmg/yii2-options/migrations
配置
要将模块添加到项目中,请在配置文件中添加以下数据
'modules' => [
...
'options' => [
'class' => 'wdmg\options\Module',
'autoloadOptions' => true,
'routePrefix' => 'admin'
],
...
],
使用
<?php
// Get app options (default)
$options = Yii::$app->params;
$email = $options['adminEmail'];
// Get app options (from DB)
$options = Yii::$app->options;
$email = $options->get('adminEmail');
$tokenExpire = $options->get('user.passwordResetTokenExpire');
// or
$email = $options->adminEmail;
$tokenExpire = $options->user->passwordResetTokenExpire;
// Set app options
$options = Yii::$app->options;
$options->set('adminEmail', "admin@example.com");
$options->set('user.passwordResetTokenExpire', 3600);
// or
$options->adminEmail = "admin@example.com";
//$options->user->passwordResetTokenExpire = 3600; //@TODO Emplement later
?>
路由
使用模块的 Module::dashboardNavItems() 方法生成用于 NavBar 的导航项列表,如下所示
<?php
echo Nav::widget([
'options' => ['class' => 'navbar-nav navbar-right'],
'label' => 'Modules',
'items' => [
Yii::$app->getModule('options')->dashboardNavItems(),
...
]
]);
?>
状态和版本 [已准备好使用]
- v.1.7.0 - 一些修复,更新版权信息
- v.1.6.0 - 修复了选项值字符串类型的检测
- v.1.5.9 - 在导入/导出时加密/解密选项
- v.1.5.8 - 更新 README.md 和依赖关系
