我正在尝试使用Eloquent执行查询,在那里我可以获得用户的所有课程。
用户有自己的课程,因为他们在某个年级。因此,将包括该等级的所有课程。
$user->grade->courses
现在我想通过数据透视表:users_courses包含一些不在用户级别的课程。但我不知道如何使用Eloquent一次查询所有表。
编辑:以下是
class Users extends Eloquent {
public function courses()
{
return $this->belongsToMany('Courses', 'users_courses', 'student_id', 'course_id');
}
public function grade()
{
return $this->belongsTo('Grades', 'grade_id');
}
}
class Courses extends Eloquent {
public function grade()
{
return $this->belongsTo('Grades');
}
public function users()
{
return $this->belongsToMany('Users', 'users_courses', 'student_id', 'course_id');
}
}
class Grades extends Eloquent {
public function courses()
{
return $this->hasMany('Courses', 'grade_id');
}
public function users()
{
return $this->hasMany('Users', 'grade_id');
}
}