500miles

500miles

这家伙有点懒,还没写个性签名!

  • 财富值2470
  • 威望值220
  • 总积分4940

个人信息

  • 2015-10-29 已签到
    连续签到60天,获得了20个金钱
  • 2015-10-28 已签到
    连续签到59天,获得了20个金钱
  • 2015-10-27 已签到
    连续签到58天,获得了20个金钱
  • 2015-10-26 已签到
    连续签到57天,获得了20个金钱
  • 错误信息说的很清楚了额...

    yii\web\Request::cookieValidationKey must be configured with a secret key

  • 2015-10-25 已签到
    连续签到56天,获得了20个金钱
  • 赞了回答
    1. 如果常量数量多、汉字内容需要在线修改或增加的话,一般在数据库中建一个字典表,保存id和字面的映射关系,但平时变化不大可以写到缓存中,从缓存中读取,当内容发生变化时再更新缓存。

    2. 如果常量数量不多、汉字内容也不需要在线调整的话,可以新建一个统一管理id和字面关系的配置文件,比如放在common/config/constants.php里:

    <?php
    return [
        'role' => [
            0 => '管理',
            1 => '用户',
            2 => '客户',
        ],
    ];
    

    然后,在common/config/params.php里增加constants项:

    <?php
    return [
        'constants' => require(__DIR__ . '/constants.php'),
    ];
    

    在Model类(User)里可以增加一个配置索引项与constants中的内容关联:

    const ADMIN = 0; //管理
    const USER = 1; //用户
    const CLIENT = 2; //客户
    
    public static $constantIndex = 'role'; // 与constants.php里的配置组对应
    

    这样,在业务代码中要获取id对应的字面就可以这样:

    $adminRoleLabel = Yii::$app->params['constants'][User::$constantIndex][User::ADMIN];
    

    foreach ($users as $user) {
        $roleLabel = Yii::$app->params['constants'][User::$constantIndex][$user->role];
    }
    
  • 2015-10-24 已签到
    连续签到55天,获得了20个金钱
  • 2015-10-23 已签到
    连续签到54天,获得了20个金钱
  • 2015-10-22 已签到
    连续签到53天,获得了20个金钱
总监 等级规则
4940/5000
资料完整度
30/100
用户活跃度
0/100

Ta的关注

0

Ta的粉丝

15

Ta的访客

42