我有一組我從表中提取的行。我們說對象評級。獲取這個對象之後,我從數據庫中說出了100個條目。關於ActiveRecord關聯集合對象的查詢
的評級對象可能是這樣的:
table_ratings
t.integer :num
所以我現在想要做的是執行這些100行一些計算,而不執行任何其他查詢。我能做到這一點,運行其他查詢:
r = Rating.all
good = r.where('num = 2') # this runs an additional query
"#{good}/#{r.length}"
這是我所想要做一個非常粗略的想法,我有其他更加複雜的輸出來構建。讓我們想象一下,我需要對這些行執行10多種不同的計算,因此在SQL查詢中對其進行別名可能不是最好的想法。
什麼是替代上述r.where查詢的有效方法?有沒有Ruby的方法或寶石,它會給我一個類似的ActiveRecord關聯集合對象的查詢API?
謝謝你給了我一個很好的起點。 –
select是我所需要的完美方法。有沒有其他的數組方法,你發現自己使用了很多?我沒有時間研究整個陣列文檔,但我想研究一些重要的方法。 –
接受的答覆。謝謝。 –