1
我似乎無法找到一個這樣做的優雅方式。如何在ActiveRecord中查找完成百分比?
但是讓我們說我的模型Projects
有很多Tasks
。
每個task
都有一個布爾型字段complete
。
所以,如果我有10 tasks
和4是「完整」,而6不是,那麼我只有40%完成。
在scope
中這樣做是否有一個很好的方法來使SQL變得精益?
我已經有兩個範圍,如:
scope :complete, lambda {
where("tasks.complete = true")
}
scope :not_complete, lambda {
where("tasks.complete = false")
}
感謝您的任何提示。
感謝提醒我關於鏈接和關係。我將它改爲:def self.percent_complete c = complete.size.to_f n = not_complete.size.to_f 如果c == 0則返回0 0 如果n == 0返回100 0 not_complete.size.to_f/complete。 size.to_f 結束 – cbmeeks 2011-05-11 01:53:34