我用这个逻辑构建了缓存键
key = {
action: 'a',
company: 5
}
如何使用公司为5的所有密钥到期?
expire_fragment(keys_including_company_5)
答案 0 :(得分:0)
Rails没有提供任何基于属性使缓存过期的内置机制。至少不再像过去那样,有一个名为缓存清理程序的功能,它被部分设计为显式地使缓存片段到期。
最好的方法是使用而不是公司ID,一个由id组成的字段和一个可以更改的属性(例如时间戳或计数器)。
实际上,会生成ActiveRecord模型cache_key
,并附加id和updated_at
字段。
通过这种方式,使项目的缓存过期只是增加计数器或更新时间戳的问题。