Rails has_many查询

时间:2013-03-02 00:23:54

标签: ruby-on-rails has-many-through has-many

我有以下型号:

类别:
has_many:sub_categories

Sub_Category:
has_many:帖子

发布:
belongs_to:sub_category

我正在尝试构建一个页面,列出带有Pjax选项卡的类别,每个“类别”选项卡将列出小部件中的所有子类别,每个小部件中有5个帖子。

问题1:我是否需要与类别控制器上的帖子进行has_many_through关联才能实现此目的(以及连接表)?

问题2:如何构建此查询?我一直在寻找一些方向

1 个答案:

答案 0 :(得分:0)

首先,不要忘记belongs_to :category模型中的sub_category

你可以做这样的事情(它不快,所以要小心):

@category.sub_categories.each do |sub_cat|
  sub_cat.posts.each_slice(5) do |posts|
    #here you create a widget, posts have at most 5 elements thanks to each_slice method
    posts.each do |post|
      #do something with each post
    end
  end
end