概要
timestamps()
初期値がNULL
になったままのコードをリファクタリングした際の知見を残します
<?php
Schema::create('training_groups', function (Blueprint $table) {
$table->bigIncrements('id');
$table->timestamps();
});
対策
以下を利用することで毎回created_at
・updated_at
に現在時刻を入力するコードを消し去りました。
$table->timestamp('created_at')->default(DB::raw('CURRENT_TIMESTAMP'));
$table->timestamp('updated_at')->default(DB::raw('CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'));
// or
// laravel8.x以降
$table->timestamp('created_at')->useCurrent();
$table->timestamp('updated_at')->useCurrent()->useCurrentOnUpdate();