我一直在用 expire_fragment 做 cache 失效处理,但是某天手贱,用了个 bundle update,不知道升级了什么,好像就失效了。 现在,我执行了 expire_fragment('page/[\s\S]*? ‘) 但是从输出的日志看,好像根本没有其效果的样子啊。
Expire fragment views/page/[\s\S]? (0.7ms) Expire fragment views/resource/ (0.6ms) Cache digest for app/views/resource/index.html.erb: 7b3bb52fd4faa42a16f63b77ae0a99b8 Read fragment views/page/1/title/7b3bb52fd4faa42a16f63b77ae0a99b8 (0.8ms) Cache digest for app/views/resource/index.html.erb: 7b3bb52fd4faa42a16f63b77ae0a99b8 Read fragment views/page/1?/7b3bb52fd4faa42a16f63b77ae0a99b8 (1.1ms) Rendered resource/index.html.erb within layouts/application (4.3ms)
另外,看了https://ruby-china.org/topics/21488 之后,好像根本就不需要手动处理失效问题了,只要修改数据库,自然就失效了,不过我这里看到的好像并不是这样的情况。