我还不了解Rails的缓存系统,但我已经阅读了一个名为片段缓存的功能的指南部分。
我的问题是:我的视图主要包含静态元素。它几乎是完全静态的,唯一的变化是状态消息和表单中的隐藏输入字段,两者都是在为视图提供服务的每个请求中生成的。
片段缓存是否适合此问题?我应该使用什么缓存策略?
答案 0 :(得分:1)
片段缓存足以解决您的问题。这是足够的,因为它使您可以缓存视图的一部分(片段),而不是整个视图。来自文档:
片段缓存用于缓存 模板中的各种块 没有缓存整个行动作为 整个。这在确定时很有用 行动的要素改变了 经常或依赖复杂 状态,而其他部分很少改变 或者可以在多个之间共享 派对。缓存是使用 Action中可用的缓存助手 视图。具有缓存的模板可能 看起来像:
<!-- this is the dynamic part-->
<b>Hello <%= @name %></b>
<% cache do %>
<%= render :partial => "static_part" %>
<% end %>
因此,您可以将静态部分放在cache
块和其外部的动态部分之间。
以下是相关文档的链接:rails fragment caching。