微型模型有許多集合。用戶可以擁有並投票選擇Miniature的最佳收藏版。這些選票位於名爲Imagevotes的模型中,該模型更新了Collections模型中的counter_cache屬性。Rails使用類似於counter_cache的布爾值?
我想要做的是標誌集合在Miniature排名第一的GOLD,然後將第二,第三和第四排名爲SILVER。我意識到我可以通過選擇@ miniature.collection.first在Miniature模型上做到這一點,但我希望能夠像存儲vote_cache一樣在counter_cache中存儲,以便我可以顯示總數GOLDS或SILVERS適合任何用戶。
有沒有一種方式,每個模型可以有布爾字段稱爲GOLD和SILVER這將更新爲新的投票轉換counter_cache更新相同的方式嗎?
任何指針和進一步閱讀非常讚賞。
更新:
它發生,我認爲這可能還帶有幾分第二索引列來完成。如果您願意,可以使用vote_position列,該列用更高的counter_cache編號的記錄中的數字「1」進行更新並從此處上升。然後我可以使用@ miniature.collection.where(:vote_position =>「1」)或類似的。也許這更理想?