laravel ORM 只开启created_at的几种方法总结
程序员文章站
2022-04-29 16:32:00
方法一:
class user extends model {
public $timestamps = false;//关闭自动维护
public...
方法一:
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的几种方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
下一篇: 不用开瓶器开红酒,这样做简单到爆了
推荐阅读
-
laravel ORM 只开启created_at的几种方法总结
-
Laravel服务容器绑定的几种方法总结
-
laravel ORM 只开启created_at的几种方法总结
-
几种laravel ORM 只开启created_at的方法
-
laravel ORM开启created_at步骤总结
-
laravel ORM开启created_at步骤总结
-
几种laravel ORM 只开启created_at的方法
-
laravel ORM 只开启created_at的几种方法总结php实例
-
Laravel服务容器绑定的几种方法总结
-
laravel ORM 只开启created_at的几种方法总结php实例