2013-03-02 78 views
1

我有以下型號:導軌的has_many查詢

類別:
的has_many: - 行業標準

Sub_Category:
的has_many:帖子

帖子:
belongs_to的:sub_category

我試圖建立一個頁面,將列出與Pjax選項卡和每個類別選項卡的類別列出所有小組件中的子分類,每個小組件中有5個帖子。

問題1:我需要has_many_through與類別控制器上的帖子關聯以實現此目的(以及連接表)嗎?

問題2:如何構造此查詢?我一直在尋找一段時間的一些方向

回答

0

首先,不要忘記在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 
+0

謝謝,是啊,我也忘了belongs_to的:類別。我把這個放在首頁,所以我需要把它放在應用程序控制器中? – Anthony 2013-03-02 00:54:25

+0

您可以在視圖中使用'<% %>'並在控制器中獲得@category。 – Kaeros 2013-03-02 00:55:53

+0

好的,我將Posts控制器路由到主頁,但是這需要進入Category控制器嗎?如果是這樣,我是否需要將它添加到應用程序控制器,以便我可以在Posts中訪問它? – Anthony 2013-03-02 01:11:59