我正在开发一个使用Laravel和Eloquent的应用程序来确定某件事(某个工作)是否未按时完成。它在表格中存储为DATE
。例如。 2016-07-18
我正在尝试获取所有记录,其中今天的日期大于" completed_date"存储在表格内。
以下是我的尝试:
$id = \Auth::user()->id;
$now = \Carbon\Carbon::today();
$jobs = Job::whereHas('manager', function ($user) use ($id) {
$user->where('users.id', '=', $id);
})->where('complete_date', '>', $now)->get();
问题在于它仍在检索将来的记录。例如,它返回的记录,我检查了表和" complete_date"是2016-08-31
有什么想法吗?
答案 0 :(得分:-2)
您的 $ now 变量是Carbon对象,而不是日期。
您必须将对象转换为日期:
$now = \Carbon\Carbon::now()->format('Y-m-d');
然后你必须在你的模型查询中使用这个变量。