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 memcache扩展的三种安装方法
Apr 26 PHP
PHP 开发环境配置(Zend Server安装)
Apr 28 PHP
PHP警告Cannot use a scalar value as an array的解决方法
Jan 11 PHP
查找php配置文件php.ini所在路径的二种方法
May 26 PHP
ThinkPHP框架任意代码执行漏洞的利用及其修复方法
Jul 04 PHP
smarty表格换行实例
Dec 15 PHP
php操作xml并将其插入数据库的实现方法
Sep 08 PHP
php实现XML和数组的相互转化功能示例
Feb 08 PHP
PHP基于自增数据如何生成不重复的随机数示例
May 19 PHP
php往mysql中批量插入数据实例教程
Dec 12 PHP
什么是PHP7中的孤儿进程与僵尸进程
Apr 14 PHP
PHP单元测试配置与使用方法详解
Dec 27 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
Codeigniter上传图片出现“You did not select a file to upload”错误解决办法
2014/06/12 PHP
PHP简单实现生成txt文件到指定目录的方法
2016/04/25 PHP
总结PHP中DateTime的常用方法
2016/08/11 PHP
js实现的网站首页随机公告随机公告
2007/03/14 Javascript
JavaScript 原型学习总结
2010/10/29 Javascript
jQuery的链式调用浅析
2010/12/03 Javascript
javascript同页面多次调用弹出层具体实例代码
2013/08/16 Javascript
关闭ie窗口清除Session的解决方法
2014/01/10 Javascript
jQuery链使用指南
2015/01/20 Javascript
jQuery实现鼠标滑过点击事件音效试听
2015/08/31 Javascript
javascript仿京东导航左侧分类导航下拉菜单效果
2020/11/25 Javascript
React利用插件和不用插件实现双向绑定的方法详解
2017/07/03 Javascript
深入理解Vue transition源码分析
2017/07/30 Javascript
JS 中LocalStorage和SessionStorage的使用
2017/08/17 Javascript
JavaScript实现换肤功能
2017/09/15 Javascript
Bootstrap modal只加载一次数据的解决办法(推荐)
2017/11/24 Javascript
Vue-Router2.X多种路由实现方式总结
2018/02/09 Javascript
mockjs+vue页面直接展示数据的方法
2018/12/19 Javascript
JS module的导出和导入的实现代码
2019/02/25 Javascript
JavaScript利用键盘码控制div移动
2020/03/19 Javascript
解决idea开发遇到javascript动态添加html元素时中文乱码的问题
2020/09/29 Javascript
JavaScript TAB栏切换效果的示例
2020/11/05 Javascript
[02:51]2018年度DOTA2最佳中单位选手-完美盛典
2018/12/17 DOTA
Python制作爬虫抓取美女图
2016/01/20 Python
Python初学者常见错误详解
2019/07/02 Python
django settings.py 配置文件及介绍
2019/07/15 Python
python解析yaml文件过程详解
2019/08/30 Python
Bibloo罗马尼亚网站:女装、男装、童装及鞋子和配饰
2019/07/20 全球购物
Andrew Marc官网:设计师外套的领先制造商
2019/10/30 全球购物
.NET常见笔试题集
2012/12/01 面试题
Linux常见面试题
2016/10/04 面试题
师范生教师实习自我鉴定
2013/09/27 职场文书
教师个人自我鉴定
2014/02/08 职场文书
2015年语文教研组工作总结
2015/05/23 职场文书
暑假开始了,你的暑假学习计划写好了吗?
2019/07/04 职场文书
安装pytorch时报sslerror错误的解决方案
2021/05/17 Python