我有两个模型 - 用户模型和下列表格的电影模型
用户表格包含以下列
电影表格包含以下列
如何在用户模型上定义关系,以便每个用户都可以获得遵循约束条件的所有电影:
Movie.min_age< = User.age
我知道我可以查询电影模型并获取min_age小于或等于用户年龄的所有电影。我的问题是如何通过使用 hasMany()或等功能在用户模型中定义雄辩关系来实现这一目标。 belongsToMany()
答案 0 :(得分:1)
因此用户可以观看很多电影。同时,可以同时从许多用户观看电影。
On User.php
public function movies(){
return $this->hasMany(Movie::class);
}
On Movie.php
public function users(){
return $this->belongsToMany(User::class);
}
通过关系来获得你想要的东西,你可以做这样的事情;
我们假设你也有一个auth系统。
$user = Auth::user();
$getMovies = $user->movies()->where('min_age','<=',$user->age)->get();