如何在视图中获取 laravel pivot table 记录?

How to get laravel pivot table records in views?

我有三张表。

Users: id,name

Courses: id,user_id,name

Order: id,user_id,course_id ( Pivot table)

如何在课程视图中确保该用户使用 Laravel eloquent.

购买了该特定课程

首先,您需要定义模型之间的多对多关系:

class User extends Model {
  public function courses() {
    return $this->belongsToMany(Course::class);
  }
}

一旦你有了它,你可以很容易地检查用户是否购买了具有给定 ID 的课程的访问权限:

if ($user->courses()->find($courseId)) {
  // user has access to course with given $courseId
}

如果您只是想在未购买课程时引发错误,请将对 find() 的调用替换为对 findOrFail() 的调用:

if ($user->courses()->findOrFail($courseId)) {
  // user has access to course with given $courseId
}