从一个表中获取所有记录在其他表中分配

时间:2018-02-01 20:17:32

标签: php mysql laravel orm eloquent

我使用eloquent查询一个问题。 有没有不写原始SQL的解决方案?

我的桌子:

blogs: id, name ...

articles: id, name ...

article_tags: blog_id, tag_id

blog_tags: blog_id, tag_id

tags: id, name

我希望将所有标签仅分配给博客(有些文章是相同的,但有些仅适用于博客)。如何在博客/标签模型中使用Eloquent(可能吗?)来完成它?

PS。我正在使用laravel 5.5

1 个答案:

答案 0 :(得分:3)

假设您已正确设置关系,可以使用:

Tag::has('blogs')->doesntHave('articles')->get();