给予另一种尝试与雄辩的方式。
在Post模型类中,定义与Category模型的多对多关系。 (枢转表是Post_categories)
class Post {
public function categories()
{
return $this->belongsToMany('App\Category', 'Post_categories', 'post_id', 'category_id');
}
}
在用户模型类,定义与分类模型中的多对多的关系。 (数据透视表是User_categories)同样在这个类中,将posts()函数定义为关系存在的查询。
class User {
public function categories()
{
return $this->belongsToMany('App\Category', 'User_categories', 'user_id', 'category_id');
}
public function posts()
{
return App\Post::whereHas('categories', function ($query) use($this) {
$query->whereIn('posts.cat_id', array_column($this->categories->toArray(), 'categories.id'));
});
}
}
要获得职位,用户订阅
App\User::find(9)->posts;
希望这有助于。
你可以去聊天? – Darama
当然。当你周围发出嗡嗡声时。 –
我在这里,放手 – Darama