zoukankan      html  css  js  c++  java
  • Yii2 自动更新时间created_at updated_at

    创建model之后,新建一条记录,结果设计的表中created_at 字段 updated_at 字段 都是datetime 类型的,却不能自动插入当前时间。查看了资料,解决如下:

    1、在class CrmBusiness extends yiidbActiveRecord {}中 引入use  yiiehaviorsTimestampBehavior;use yiidbExpression;

    2、覆盖父类的behaviors 方法

    /**
    * @inheritdoc
    */
     public function behaviors()
      {
         return [
              [
                  'class' => TimestampBehavior::className(),
                  'createdAtAttribute' => 'created_at',// 自己根据数据库字段修改
                  'updatedAtAttribute' => 'updated_at', // 自己根据数据库字段修改, // 自己根据数据库字段修改
                  //'value'   => new Expression('NOW()'),
                  'value'   => function(){return date('Y-m-d H:i:s',time());},
              ],
          ];
     }

    3、value的值需要注意:第一种方法 引入use yiidbExpression;'value'   => new Expression('NOW()'),第二种方法:不需要引入use yiidbExpression;'value'   => function(){return date('Y-m-d H:i:s',time());},

    4、问题虽然解决,但是为什么 新建数据却没有自动插入时间的原因却没有发现..............

  • 相关阅读:
    28图结构的类实现
    27图的拓扑排序
    26最短路径之Floyd算法
    25最短路径之Dijkstra算法
    24最小生成树之Prim算法
    23最小生成树之Kruskal算法
    22-1图的遍历的源代码
    22图的遍历
    21图结构的基本概念
    20树结构的类实现
  • 原文地址:https://www.cnblogs.com/xp796/p/5473527.html
Copyright © 2011-2022 走看看