我需要从其他关联模型中获取所有关联模型,我希望首先运行查询。
例如,我有Post模型和Tag模型。我需要获得与一些标签相关的所有帖子。 没有问题,如果我只有一个标签 - 只需要调用'tag.posts',但如果我有更多,那么一个标签 - 例如,我需要做一些事情,如:
Post.where(id: PostTag.where(tag_id: some_ids).pluck(:category_id).uniq)
我相信Rails有一个内置的解决方案。那么,谁知道呢?
答案 0 :(得分:0)
我的想法是:
Post.joins(:post_tags).where('post_tags.tag_id' => some_ids).uniq
您可以将其作为更容易重用的范围。我不认为有这种情况的内置方法。