1

Rails のキャッシング システムについてはまだ理解していませんが、フラグメント キャッシングと呼ばれる機能のガイド セクションを読みました。

私の問題は次のとおりです。私のビューは主に静的要素で構成されています。これはほぼ完全に静的であり、変更されるのはフォーム内のステータス メッセージと非表示の入力フィールドだけです。両方とも、ビューを提供するアクションへのリクエストごとに生成されます。

フラグメント キャッシュはこの問題に適していますか? どのキャッシュ戦略を使用する必要がありますか?

4

1 に答える 1

1

フラグメントキャッシングは問題に適しています。ビュー全体ではなく、ビューの一部(フラグメント)をキャッシュできるため、これで十分です。ドキュメントから:

フラグメントキャッシングは、アクション全体をキャッシュせずに、テンプレート内のさまざまなブロックをキャッシュするために使用されます。これは、アクションの特定の要素が頻繁に変更されるか、複雑な状態に依存し、他の部分がめったに変更されないか、複数の関係者間で共有できる場合に役立ちます。キャッシュは、アクションビューで使用可能なキャッシュヘルパーを使用して実行されます。キャッシュ付きのテンプレートは次のようになります。

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

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

したがって、静的部分をcacheブロックの間に配置し、動的部分をブロックの外側に配置することができます。関連するドキュメントへのリンクは次のとおりです:railsfragmentcasching

于 2011-05-11T13:01:39.263 に答える