コントローラのモデルからコンテンツがロードされているページの一部をフラグメントキャッシュしている場合。これらのクエリもキャッシュする必要がありますか?
これは、2つの異なるタイプのデータのフラグメントとアクティブサポートキャッシングの2つのタイプのキャッシングがあることを意味しますか?
例えば。私が持つことができるビューで:
<% cache 'videos_and_photos', :expires_in => 24.hours do %>
<div id="videos">
<% @videos.each do |video| %>
...
<% end %>
</div>
<div id="photos">
<% @photos.each do |photo| %>
...
<% end %>
</div>
<% end %>
およびコントローラー内:
Rails.cache.fetch('videos', :expires_in => 24.hours) do
@videos = Video.where(...)
end
Rails.cache.fetch('photos', :expires_in => 24.hours) do
@photos = Photo.where(...)
end
これに関する私の唯一のグリップは、1つのキャッシュが最初に期限切れになると、データの表示に一貫性がなくなることです。これについてもっと良い方法はありますか?