0

我有一个 Category 模型,它使用 Ancestry gem 创建树层次结构。如果我有模特关系,

Category has_many :posts

我想知道如何返回属于某个类别或该类别子项的帖子。category.subtree 返回一个 ARel 对象,所以我可以这样做:

category.subtree.includes(:posts)

它按类别映射帖子,但我只想要帖子。我唯一能想到的就是遍历集合并创建一个新的帖子集合。

4

1 回答 1

0

尝试:

Post.where('category_id in (?)', category.subtree_ids)

我现在不记得,如果 subtree_ids 也会返回类别本身的 id。

于 2012-07-15T22:29:42.573 回答