什么是持续更新和跟踪对象得分的最有效方法?

时间:2012-03-20 17:52:55

标签: ruby-on-rails

一类对象Item,根据其属性附加分数。我需要连续地将calculate_ranking方法应用于Item类(理想情况下,当任何对象的属性发生更改时)并有效地计算此分数:

Item.all.each do |i|
    Item.update_counters i.id, :score_count =>  i.calculate_ranking
end 

我尝试过使用attr_accessor:得分(在为Item表添加得分列之后)和after_initialize:calculate_ranking然而它没有用。是否可以应用自定义计数器缓存来实现这一点,即使“得分”不是它自己的独立模型?也就是说,不包括:Class Score; counter_cache =>真正;结束。

1 个答案:

答案 0 :(得分:0)