我有一个表,我通过 datepicker 以日期格式存储数据。在存储日期时,我正在做这样的事情:
$data['schedule'] = Carbon::parse($request->schedule)->toDateTimeString();
然后在模型中我定义如下:
protected $dates = [
'schedule', 'created_at', 'updated_at', 'deleted_at'
];
现在在检索日期时,我使用
diffForHumans()
是这样的:$event->schedule = $event->schedule->diffForHumans();
但它抛出这样的错误:
我检查了 mySQL 数据库的格式,我有这样的日期:
2017-07-02 14:38:23
编辑:
之前我在将日期存储在表格中时遇到问题,请参阅 How to format date receiving through Vuejs Datepicker in laravel 以获取详细说明。它抛出以下错误:
所以我选择使用
Carbon::parse
同时将其存储在数据库中。这个怎么解决啊,求大神帮忙。
谢谢。
最佳答案
尝试在您的模型中使用访问器方法。
public function getScheduleAttribute($value)
{
return Carbon::parse($value)->diffForHumans();
}
并将属性访问为
$event->schedule;
关于php - 无法找到两位数的月份 Laravel 中的数据丢失,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44880705/