同一型号Laravel上的2个查询



我想从Course表中获取userId$userId的所有行。从该列表中,我想选择具有id字段值与输入值$id相同的行。我试了下面这个。它返回null。有解决方案吗?

$course=Course::where('userId',$userId)->pluck('id');
$data=$course->where('id',$id)->first();
dd($data);

您不应该使用'pluck' -这只是取出指定的列以匹配记录,而不是其他。你的美元课程因此,collection(即从第一行返回的内容)只是一个包含id的集合,没有其他内容。

你可以将多个'where'子句链接在一起:

$course = Course::where('userID', $userID)->where('id', $id)->first();
dd($course);

您可以使用简写,它允许您在where方法中传递两个搜索参数。

$course = Course::where([
'id' => $id,
'userID' => $userID
])->first();

最新更新