laravel ORM 只开启created_at的几种方法总结


Posted in PHP onJanuary 29, 2018

方法一:

class User extends Model {
  public $timestamps = false;//关闭自动维护
  public static function boot() {
    parent::boot();
    #只添加created_at不添加updated_at
    static::creating(function ($model) {
      $model->created_at = $model->freshTimestamp();
      //$model->updated_at = $model->freshTimeStamp();
    });
  }
}
此处有坑:使用create方法创建一条记录时返回值的created的值是这样的: 
“created_at”: { 
“date”: “2017-09-27 13:47:12.000000”, 
“timezone_type”: 3, 
“timezone”: “Asia/Shanghai” 
}, 
并不是想象中的 
“created_at”: “2017-09-27 13:49:39”,

方法二:

class User extends Model {
  const UPDATED_AT = null;//设置update_at为null
  //const CREATED_AT = null;
}
此处有坑:使用destroy删除会报错 
Missing argument 2 for Illuminate\Database\Eloquent\Model::setAttribute() 
使用delete不影响,wherein也不影响

方法三:

class User extends Model {
  //重写setUpdatedAt方法
  public function setUpdatedAt($value) {
    // Do nothing.
  }
  //public function setCreatedAt($value)
  //{
    // Do nothing.
  //}
}

方法四:

class User extends Model {
  //重写setUpdatedAt方法
  public function setUpdatedAtAttribute($value) {
    // Do nothing.
  }
  //public function setCreatedAtAttribute($value)
  //{
    // Do nothing.
  //}
}

ps:

在Migration中也可以设置(具体没试过,在别的文章里看见的)

class CreatePostsTable extends Migration {
  public function up() {
   Schema::create('posts', function(Blueprint $table) {
   $table->timestamp('created_at')
   ->default(DB::raw('CURRENT_TIMESTAMP'));
  });
}

以上这篇laravel ORM 只开启created_at的几种方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
推荐php模板技术[转]
Jan 04 PHP
使用php来实现网络服务
Sep 15 PHP
php学习笔记 [预定义数组(超全局数组)]
Jun 09 PHP
使用php判断服务器是否支持Gzip压缩功能
Sep 24 PHP
laravel安装和配置教程
Oct 29 PHP
PHP提示Warning:phpinfo() has been disabled函数禁用的解决方法
Dec 17 PHP
PHP 常用的header头部定义汇总
Jun 19 PHP
Symfony2框架创建项目与模板设置实例详解
Mar 17 PHP
PHP 常用时间函数资料整理
Oct 22 PHP
PHP基于反射机制实现插件的可插拔设计详解
Nov 10 PHP
php-beanstalkd消息队列类实例分享
Jul 19 PHP
为Plesk PHP7启用Oracle OCI8扩展方法总结
Mar 29 PHP
PHP+Redis 消息队列 实现高并发下注册人数统计的实例
Jan 29 #PHP
PHP 使用二进制保存用户状态的实例
Jan 29 #PHP
thinkphp3.2.0 setInc方法 源码全面解析
Jan 29 #PHP
Ubuntu上安装yaf扩展的方法
Jan 29 #PHP
PHP实现的防止跨站和xss攻击代码【来自阿里云】
Jan 29 #PHP
php实现的AES加密类定义与用法示例
Jan 29 #PHP
php 判断IP为有效IP地址的方法
Jan 28 #PHP
You might like
判“新”函数:得到今天与明天的秒数
2006/10/09 PHP
解析PHP中的unset究竟会不会释放内存
2013/07/18 PHP
两种设置php载入页面时编码的方法
2014/07/29 PHP
php根据指定位置和长度获得子字符串的方法
2015/03/17 PHP
Laravel实现表单提交
2017/05/07 PHP
深入探寻javascript定时器
2015/01/02 Javascript
Angularjs制作简单的路由功能demo
2015/04/14 Javascript
jQuery控制Div拖拽效果完整实例分析
2015/04/15 Javascript
js钢琴按钮波浪式图片排列效果代码分享
2015/08/26 Javascript
微信小程序 实例应用(记账)详解
2016/09/28 Javascript
Vue中的ref作用详解(实现DOM的联动操作)
2017/08/21 Javascript
基于vue 实现token验证的实例代码
2017/12/14 Javascript
Bootstrap模态对话框用法简单示例
2018/08/31 Javascript
vue-cli脚手架build目录下utils.js工具配置文件详解
2018/09/14 Javascript
vue集成kindeditor富文本的实现示例代码
2019/06/07 Javascript
js时间转换毫秒的实例代码
2019/08/21 Javascript
Python黑魔法@property装饰器的使用技巧解析
2016/06/16 Python
Tensorflow实现卷积神经网络用于人脸关键点识别
2018/03/05 Python
解决python xx.py文件点击完之后一闪而过的问题
2019/06/24 Python
Django ImageFiled上传照片并显示的方法
2019/07/28 Python
python面向对象 反射原理解析
2019/08/12 Python
python实现扑克牌交互式界面发牌程序
2020/04/22 Python
tensorflow模型转ncnn的操作方式
2020/05/25 Python
python实现在线翻译
2020/06/18 Python
详解Anaconda 的安装教程
2020/09/23 Python
Django框架请求生命周期实现原理
2020/11/13 Python
python实现三种随机请求头方式
2021/01/05 Python
HTML5 canvas基本绘图之填充样式实现
2016/06/27 HTML / CSS
巴黎欧莱雅法国官网:L’Oreal Paris
2019/04/30 全球购物
编程用JAVA解析XML的方式
2013/07/07 面试题
九年级历史教学反思
2014/01/27 职场文书
总裁助理岗位职责
2014/02/17 职场文书
空中乘务员岗位职责
2014/03/08 职场文书
楚门的世界观后感
2015/06/03 职场文书
航班延误投诉信
2015/07/02 职场文书
详细聊聊Oracle表碎片对性能有多大的影响
2022/03/19 Oracle