缓存绑定到其操作的优点是什么?

时间:2016-06-09 22:48:17

标签: ruby-on-rails caching

我正在阅读此article以掌握Rails中的缓存。我的理解是不再使用页面缓存和动作缓存,建议使用片段缓存。片段缓存允许将视图逻辑片段包装在缓存块中,并在下一个请求进入时从缓存存储中提供。

它表示缓存块将绑定到调用它的操作。因此,如果要为每个操作缓存多个片段,则应该为缓存调用提供action_suffix:

<% cache(action: 'recent', action_suffix: 'all_products') do %>
  All available products:
  <% Product.all.each do |p| %>
    <%= link_to p.name, product_url(p) %>
  <% end %>
<% end %>

但是,如果您不希望缓存块绑定到调用它的操作,您还可以通过使用密钥调用缓存方法来使用全局加密的片段:

<% cache('all_available_products') do %>
  All available products:
<% end %>

我的问题是为什么要将缓存块绑定到操作?有什么好处?通过使用:action和:action_suffix键,它看起来像是额外的代码。

0 个答案:

没有答案