1
我在清單和緩存中存在一些Rails問題。當清掃器被調用時,Rails沒有刪除緩存/ .html頁面
/cache中的.html文件正在第一個視圖上生成。
清掃器操作在需要時被調用。
然而,清掃動作不是從/緩存
下面的代碼刪除的.html頁面是從我/控制器和/清掃目錄剝離下來。 puts
行都記錄,所以我知道我們正在執行罰款 - expire命令似乎並沒有刪除該文件。
任何人有一個想法,我可以lool?
class WidgetsController < ApplicationController
cache_sweeper :widget_sweeper
caches_page :help
def help
render :template => '/widgets/help.html'
end
end
class WidgetSweeper < ActionController::Caching::Sweeper
observe HelpPage
def after_save(record)
puts "record "
puts record.inspect
expire_page(:controller => 'widgets', :action => 'help')
puts "ok!"
end
end
我認爲這有點奇怪:你應該觀察一個模型,你的模型被命名爲HelpPage? – apneadiving
我將模型和一些元素重新命名爲更清晰。我只是想說明我到after_save後,但expire_page不起作用。我也嘗試過expire_page('/ widgets/help') –
是否有任何參數傳遞給HTML頁面?例如/ widgets/help?param = 234?另外,你是否證實緩存頁面存儲爲widgets/help.html而不是其他名稱? –