溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Laravel ORM開啟created_at的方法

發(fā)布時間:2021-08-18 14:16:52 來源:億速云 閱讀:162 作者:chen 欄目:編程語言

這篇文章主要講解了“Laravel ORM開啟created_at的方法”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Laravel ORM開啟created_at的方法”吧!

下面由Laravel框架教程欄目給大家介紹Laravel ORM只開啟created_at的幾種方法,希望對需要的朋友有所幫助!

方法一:

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方法創(chuàng)建一條記錄時返回值的created的值是這樣的:

“created_at”: {
“date”: “2020-09-27 13:47:12.000000”,
“timezone_type”: 3,
“timezone”: “Asia/Shanghai”
},

并不是想象中的

“created_at”: “2020-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.
  //}
}

在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的方法”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對Laravel ORM開啟created_at的方法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI