获取具有关联记录的所有记录

时间:2014-07-22 10:42:53

标签: ruby-on-rails ruby-on-rails-4 rails-activerecord

Post has_many Tags。每个标签记录都有一个名称,例如" fashion"或" business"。

如何获取所有标记为" fashion"?

的帖子
# Get all posts
@posts = Post.all

# Get the filter tag
@filter_tag = Tag.find_by_name(params[:filter_name])

好的,现在我们有了所有帖子,现在我只想要@filter_tag的@posts。我该怎么办?

我可以遍历每个帖子,并检查它是否有过滤器标签。如果是这样,请将其添加到数组中。我确定Rails ActiveRecord有更好的方法。

1 个答案:

答案 0 :(得分:1)

如果您的关联设置正确,那么

@filter_tag_posts = @filter_tag.posts