假设如下,我有一个:
课程模式:
belongsToMany用户ModelbelongsToMany考试模型HasMany试题模型HasMany应答Model课程考试成绩表
iduser_idcourse_idexam_idquestion_idanswer_id是否有更好的方法来获得结果而不必直接查询表?
我目前正在做以下工作:
public function displayResult($user, $course, $exam) {
$course_exam_results = \App\CourseExamResult::where([
'user_id' => $user->id,
'course_id' => $course->id,
'exam_id' => $exam->id
])
->get();
dd($course_exam_results);
}会喜欢做一些像auth()->user()->course(??)->exam(??)->results这样更好的事情。我想使用laravel hasManyThrough,但我认为我不能让它在这种情况下工作,因为它只接受2种模式,而我可能不得不一次调用3-5模型。
提前谢谢你。
发布于 2021-08-14 04:06:49
如果您想在Laravel雄辩语中使用多个where,您必须如下所示:
where()一个数组。$course_exam_results = \App\CourseExamResult::where([
['user_id', auth()->user()->id],
['course_id', $course->id],
['exam_id', $exam->id]
])
->firstOrFail();https://stackoverflow.com/questions/68780193
复制相似问题