laravel 上的方法无法正常工作?
where method not working properly on laravel?
我正在尝试提取最后的用户锻炼,但我不知道为什么我不能这样做。我觉得我做得很好。请检查一下。
您是在 Eloquent 集合上调用 where()
方法,而不是关系查询。
集合的 where()
方法与查询的 where()
方法不同。对于 Collection,第二个参数是要比较的值,函数只能做相等比较。第三个参数是一个布尔值,用于确定它是严格等于 (===) 还是不等于 (==)。
要执行您要查找的操作,您需要在关系查询中调用 where()
(以及 get()
之后的结果):
// note $user->workouts() is the relationship query
$workouts = $user->workouts()->where('created_at', '>=', Carbon\Carbon::now()->subMonth())->get();
我正在尝试提取最后的用户锻炼,但我不知道为什么我不能这样做。我觉得我做得很好。请检查一下。
您是在 Eloquent 集合上调用 where()
方法,而不是关系查询。
集合的 where()
方法与查询的 where()
方法不同。对于 Collection,第二个参数是要比较的值,函数只能做相等比较。第三个参数是一个布尔值,用于确定它是严格等于 (===) 还是不等于 (==)。
要执行您要查找的操作,您需要在关系查询中调用 where()
(以及 get()
之后的结果):
// note $user->workouts() is the relationship query
$workouts = $user->workouts()->where('created_at', '>=', Carbon\Carbon::now()->subMonth())->get();