加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails 4计数器缓存不同步

发布时间:2020-12-16 23:07:31 所属栏目:百科 来源:网络整理
导读:我有一个带有计数器缓存的Rails 4.2应用程序(设置为belongs_to:my_model,counter_cache:true),它设置的值不正确.我可以直接调用控制台并调用MyModel.associated_model_count并获得20,然后调用MyModel.associated_model.count并获得19.保存模型不能解决这个
我有一个带有计数器缓存的Rails 4.2应用程序(设置为belongs_to:my_model,counter_cache:true),它设置的值不正确.我可以直接调用控制台并调用MyModel.associated_model_count并获得20,然后调用MyModel.associated_model.count并获得19.保存模型不能解决这个问题.

这些价值似乎没有多少关闭,但有些肯定是关闭的,我无法弄清楚原因.

解决方法

要回答部分问题并希望帮助您进行调试,计数器列仅在create和destroy上更新,因此保存对象不会触发计数器更新.更多详细信息可在以下选项下的:counter_cache条目下找到: http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#method-i-belongs_to

您可以使用MyModel.reset_counters(id,*计数器)(http://apidock.com/rails/ActiveRecord/CounterCache/reset_counters)手动触发计数器更新,如果您想要进入干净状态以确定它的位置.

相关问题以及有用的答案和讨论:Rails counter_cache not updating correctly

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读