wdmg/yii2-options

将应用选项(设置)存储在数据库中

安装: 531

依赖: 2

建议者: 0

安全: 0

星标: 5

关注者: 4

分支: 2

开放问题: 0

类型:yii2-extension

1.7.0 2023-06-24 20:04 UTC

README

Yii2 Downloads Packagist Version Progress GitHub license

Yii2 Options

Yii2 Options

在数据库中存储应用选项(运行时自动加载,并可从 Yii:$app-param[] 访问)

此模块是 Butterfly.СMS 内容管理系统的一个组成部分,但也可以作为独立扩展使用。

版权所有(c)2019-2023 W.D.M.Group, Ukraine

要求

安装

要安装此模块,请在控制台中运行以下命令

$ composer require "wdmg/yii2-options"

配置数据库连接后,在控制台中运行以下命令

$ php yii options/init

然后选择要执行的操作

  1. 应用所有模块迁移
  2. 回滚所有模块迁移
  3. 扫描并添加所有应用选项

迁移

在任何情况下,您都可以通过以下命令在控制台中执行迁移并创建初始数据

$ 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 和依赖关系