【发布时间】:2019-02-10 15:45:08
【问题描述】:
我无法在流明中使用 dateformat 'U' 获得时间戳。
迁移中:
$table->timestamps();
在模型中:
protected $dateFormat = 'U';
protected $dates = [
'created_at',
'updated_at',
'deleted_at'
];
public function getDateFormat()
{
return 'U';
}
从控制器插入行:
$model = new ApiKey;
$model->random= rand();
$model->name = $name;
$model->scope = $scope;
$model->save();
它确实在数据库中插入了行,但 0000-00-00 00:00:00 值为 created_at 和 updated_at 列。
另外,当通过 toArray 或 toJson 检索模型时,它会抛出异常:
我希望 lumen 自动更新时间戳并将时间戳检索为 unixtimestamp 格式,即从 1970 年 1 月 1 日开始的秒数。
另外,$table->timestamps() 没有创建 deleted_at 列。我需要做什么才能通过 laravel 创建此列。
除了$table->timestamp('deleted_at');,还有其他选择吗?
我找到了一个解决方案,将时间戳列更改为 int。但我希望事情以 laravel 的方式完成。
【问题讨论】:
-
...为什么要使用“U”格式的时间戳字段??
-
这应该有助于软删除列。 laravel.com/docs/5.6/eloquent#soft-deleting
-
@Devon,我想以 U 格式显示这些字段。在数据库中它仍然可以保留为日期时间。