导轨的has_many查询
问题描述:
我有以下型号:导轨的has_many查询
类别:
的has_many: - 行业标准
Sub_Category:
的has_many:帖子
帖子:
belongs_to的:sub_category
我试图建立一个页面,将列出与Pjax选项卡和每个类别选项卡的类别列出所有小组件中的子分类,每个小组件中有5个帖子。
问题1:我需要has_many_through与类别控制器上的帖子关联以实现此目的(以及连接表)吗?
问题2:如何构造此查询?我一直在寻找一段时间的一些方向
答
首先,不要忘记在sub_category
模型belongs_to :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
谢谢,是啊,我也忘了belongs_to的:类别。我把这个放在首页,所以我需要把它放在应用程序控制器中? – Anthony 2013-03-02 00:54:25
您可以在视图中使用''并在控制器中获得@category。 – Kaeros 2013-03-02 00:55:53
好的,我将Posts控制器路由到主页,但是这需要进入Category控制器吗?如果是这样,我是否需要将它添加到应用程序控制器,以便我可以在Posts中访问它? – Anthony 2013-03-02 01:11:59