2011-05-05 43 views
1

有我的應用程序中的索引動作的帖子控制器,它可以用html和rss進行響應。我將它設置爲使用memcached緩存與caches_action :index, :layout => false, …,一切工作正常的HTML,但是當rss已被緩存,然後我把它包裹到HTML佈局application.html.haml,雖然我有rss佈局application.rss.haml。爲什麼rails caches_actions使用錯誤的佈局?

據我所知,rss最好使用caches_page,但我想知道爲什麼使用錯誤的佈局類型。我使用rails 3.0.7。

+0

我有同樣的問題...... :-( – Houen 2011-11-15 18:26:22

回答

1

我只是跑成這樣也caches_action不尊重格式和佈局正確,所以我們不得不這樣做:

caches_action :index, :layout => false, :if => Proc.new {|c| c.request.format.try(:html?)} 
caches_action :index, :if => Proc.new {|c| c.request.format.try(:rss?)} 

基本上有你希望緩存每個不同的格式單獨caches_action電話。