2011-11-20 75 views
1

我有分页的行动,目前我用下面的方法来更新内容:轨页面缓存,AJAX

render :json => { :content => render_to_string(:partial => '..'), :pagination => render_to_string(:partial => '') }, :layout => false 

所以,基本上,我想只渲染所需零件。

请问您可以请教我可以在这种情况下使用的缓存机制?或者只是使用页面缓存更好(更快)?

回答

0

好吧,为了防止有人在寻找类似的东西,还有一个动作缓存功能,它对我来说非常合适。 http://api.rubyonrails.org/classes/ActionController/Caching/Actions.html

,所以我不得不做的唯一的事情是:

caches_action :index, :cache_path => Proc.new { |controller| controller.params }, :if => proc { |controller| controller.request.xhr? } 

什么的软件轨的一块神奇的!

+0

这可能会干扰用户会话吗?如果缓存的操作由具有会话ID的“登录”用户启动。会话ID现在是否会被点击缓存操作的其他人拥有? – Dru