【发布时间】:2009-12-02 03:58:07
【问题描述】:
我已设置清扫器以在通过控制器修改模型时清除页面缓存中的特定页面。
如何从 Rails 控制台 (IRB) 使用清扫器?
即。当我在控制台中修改模型对象时,清扫器应该自动运行,或者我需要一种简单的方法来为修改的对象手动运行清扫器。
【问题讨论】:
标签: ruby-on-rails
我已设置清扫器以在通过控制器修改模型时清除页面缓存中的特定页面。
如何从 Rails 控制台 (IRB) 使用清扫器?
即。当我在控制台中修改模型对象时,清扫器应该自动运行,或者我需要一种简单的方法来为修改的对象手动运行清扫器。
【问题讨论】:
标签: ruby-on-rails
看看Rails source 的expire_page。这实际上只是从缓存页面的 url 构造缓存文件的路径,然后删除该文件的问题。不幸的是,sweepers 仅在控制器层中,因为您需要生成 URL(即 url_for),因此您需要自己手动生成缓存页面的路径,或者将路由生成/识别拉入模型层。
【讨论】: