0

我需要从我想首先运行查询的其他关联模型中获取所有关联模型。

例如,我有 Post 模型和 Tag 模型。我需要获取与某些标签相关联的所有帖子。没有问题,如果我只有一个标签 - 只需调用 'tag.posts',但如果我有更多,那么一个标签 - 例如,我需要做一些思考,例如:

Post.where(id: PostTag.where(tag_id: some_ids).pluck(:category_id).uniq)

我相信 Rails 有一个内置的解决方案。那么,有人知道吗?

4

1 回答 1

0

我的想法是:

Post.joins(:post_tags).where('post_tags.tag_id' => some_ids).uniq

您可以使其成为更易于重用的范围。我认为没有针对这种情况的内置方法。

于 2013-05-15T04:07:45.700 回答