2013-03-06 47 views
1

例如,給定一個Book對象,其中有幾個Tags與之關聯。我知道我可以很容易地檢索一本書的所有標籤,但我怎樣才能檢索所有書籍的標籤。就像一堆標籤,但只包括藏書中的標籤,而不是全部標籤。Rails通過集合檢索相關數據

回答

2

獲取與書籍集合中的id匹配的book_id的標籤。

Tag.where(:book_id => book_collection.map(&:id)) 
+0

不錯,但從建築的角度來看,這將是最好的地方來檢索這些數據?假設我正在檢索索引中的書籍,最好創建一個已經攜帶標籤的新實例變量? – 2013-03-06 16:57:42

+0

@CarlosPereira:我不確定你在問什麼 - 你可以在你的問題中發表一些代碼來澄清你正在嘗試做什麼? – PinnyM 2013-03-06 17:01:04

+0

我有一個圖書索引視圖OK,簡單地列出書:

    <%=渲染@書籍%>
在我想同樣的看法顯示這些書籍的標籤雲,在書籍的控制器/模型中恢復。 我的問題是,實現您建議的例程的最佳位置是控制器的索引方法,創建一個新變量@tags並在視圖中使用它,或者應該在標記模型中創建特定的方法,例如,關係標記作爲參數收到的一組書籍。 – 2013-03-06 17:10:36