我想计算属于konkurrancer的标签数量。 这是一个通过Tagsmenu关系的has_many。
我已将列konkurrancers_count添加到我的Tags表中。
这是我的加入模式:
class Tagsmenu < ActiveRecord::Base
belongs_to :konkurrancer, :counter_cache => :true
belongs_to :tag
end
但是当我摧毁一个konkurrancer时,konkurrancers_count列不会更新。
答案 0 :(得分:1)
如果您delete
记录它只运行删除sql。如果您destroy
有记录,它将实例化模型,运行所有回调,然后然后运行删除sql。我想您会发现需要使用destroy
才能看到缓存列更新。
答案 1 :(得分:0)
看看这个方法:update_counters