2009-12-02 47 views
1

當模型通過控制器修改時,我已經設置了清理器來清除頁面緩存中的特定頁面。Rails:沒有控制器的清空頁面緩存

如何從Rails控制檯(IRB)使用清掃器?

即,當我在控制檯中修改一個模型對象時,清掃器應該自動運行,或者我需要一種簡單的手動方式爲修改的對象運行清掃器。

回答

1

查看Rails source的expire_page。它實際上只是從緩存頁面的url構建緩存文件路徑,然後刪除該文件。不幸的是,由於您需要URL生成(即url_for),所以您只需手動生成緩存頁面的路徑或將模型圖層的路徑生成/識別拉入控制器層即可。