Кэширование фрагментов Rails подходит этой проблеме? - PullRequest
1 голос
/ 10 мая 2011

Я пока не понимаю систему кэширования Rails, но я прочитал в разделе руководств функцию, называемую фрагментным кэшированием.

Моя проблема заключается в том, что мой взгляд состоит в основном из статических элементов.Он почти полностью статичен, единственное изменение - это сообщение о состоянии и скрытое поле ввода в форме, которые генерируются при каждом запросе к действию, обслуживающему представление.

Подходит ли кэширование фрагментов для этой проблемы?Какую стратегию кэширования я должен использовать?

1 Ответ

1 голос
/ 11 мая 2011

Кэширование фрагментов соответствует вашей проблеме.Это адекватно, потому что позволяет вам кэшировать часть (фрагмент) вашего представления вместо всего представления.Из документов:

Кэширование фрагментов используется для кэширования различных блоков в шаблонах без кэширования всего действия в целом.Это полезно, когда определенные элементы действия часто изменяются или зависят от сложного состояния, в то время как другие части редко изменяются или могут использоваться несколькими сторонами.Кэширование выполняется с помощью помощника кеша, доступного в Action View.Шаблон с кэшированием может выглядеть примерно так:

<!-- this is the dynamic part-->
<b>Hello <%= @name %></b>

<% cache do %>
  <%= render :partial => "static_part" %>
<% end %>

Таким образом, вы можете поместить статическую часть между блоком cache и динамической частью вне него.Вот ссылка на соответствующие документы: Кэширование фрагментов рельсов .

...