大家好我想在diffForHumans()
中显示日期在我使用的线程控制器中
$thread = DB::table('threads')
->join('users', 'users.id', '=', 'threads.user_id')
->select('users.*', 'threads.*')
->orderBy('threads.id', 'DESC')
->get(); return view('thread.index', compact('thread'));
在我看来
{{ $item->created_at->diffForHumans() }}
但我发现错误
Call to a member function diffForHumans() on string
在此之前我使用$thread = Thread::paginate(3);
和方法diffForHumans()工作
我的问题是什么?
答案 0 :(得分:6)
Laravel DB
Facade不返回有说服力的对象,因此,created_at
和updated_at
不属于DateTime
类型。 Eloquent对象的datetime实例返回Carbon的实例。
<强>解决方案强>
因为您的created_at
是一个字符串,所以您必须解析它才能让Carbon工作。
{{ \Carbon\Carbon::parse($item->created_at)->diffForHumans() }}