【发布时间】:2014-05-14 10:41:42
【问题描述】:
我正在使用 memcached 来缓存表记录。我的代码如下
Rails.cache.fetch('custom_profiles') do
@custom_profiles=CustomProfile.where(:status=>"Active")
end
但是,只要添加了新记录,它就不会更新。我想在表格被编辑时更新这个变量。如果您对此有任何想法,请与我分享。
【问题讨论】:
-
你看过片段缓存指南吗? guides.rubyonrails.org/caching_with_rails.html#fragment-caching 你可以在你的控制器中使用
expire_fragmentexpire_fragment来使你的缓存片段过期expire_fragment -
除了
create,您还必须考虑custom_profiles何时是updated / deleted。我建议不要缓存对象,而是每个对象的视图表示的片段。请参阅来自 dhh 的 article。 -
我们可以让另一个控制器的缓存过期吗?
-
是的,绝对是@pooja agarwal
标签: ruby ruby-on-rails-3 memcached