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、问题虽然解决,但是为什么 新建数据却没有自动插入时间的原因却没有发现..............

  • 相关阅读:
    Redis 是单进程单线程的?
    LeetCode-114. Flatten Binary Tree to Linked List
    Java HashMap源码分析
    转:zookeeper中Watcher和Notifications
    分布式服务框架
    LeetCode-330.Patching Array
    转:String StringBuffer StringBuilder区别
    最小堆代码实现
    数组的各类排序
    两步建立 ssh 反向隧道
  • 原文地址:https://www.cnblogs.com/xp796/p/5473527.html
Copyright © 2011-2022 走看看