1、设置默认字段

数据入库时一般都需要创建时间和修改时间,创建一个 BaseModel,BaseModel 继承 Eloquent/Model

自定义 create_at、update_at 字段,其他 Model 继承 BaseModel

use Illuminate\Database\Eloquent\Model;

class BaseModel extends Model
{
    const CREATED_AT = 'create_time';
    const UPDATED_AT = 'modify_time';

}

2、不需要记录修改时间怎么设置
最近做日志业务,只需要 created_at 字段就可以了,数据库不想添加 updated_at 字段。下面是解决方法:

解决方法
查看 Illuminate\Database\Eloquent\Model 后发现,有这样一行代码 use Concerns\HasTimestamps ,接下找到 trait HasTimestamps 看到 如下代码:

 protected function updateTimestamps()
    {
        $time = $this->freshTimestamp();

        if (! is_null(static::UPDATED_AT) && ! $this->isDirty(static::UPDATED_AT)) {
            $this->setUpdatedAt($time);
        }

        if (! $this->exists && ! $this->isDirty(static::CREATED_AT)) {
            $this->setCreatedAt($time);
        }
    }

    /**
     * Set the value of the "updated at" attribute.
     *
     * @param  mixed  $value
     * @return $this
     */
    public function setUpdatedAt($value)
    {
        $this->{static::UPDATED_AT} = $value;

        return $this;
    }

在对应的 Model 中设置 const UPDATED_AT = null 就可以了