5
XMLのRails 4(cache_digests)で新しいキャッシュ戦略を活用する方法はありますか?XMLビルダーでcache_digestsを使用しますか?
私はxml.erbビューを使用することができますが、私はそれらの簡潔さのためにxml.builderビューを優先します。
この方法でcache_digestsを使用する方法はありますか?
XMLのRails 4(cache_digests)で新しいキャッシュ戦略を活用する方法はありますか?XMLビルダーでcache_digestsを使用しますか?
私はxml.erbビューを使用することができますが、私はそれらの簡潔さのためにxml.builderビューを優先します。
この方法でcache_digestsを使用する方法はありますか?
XMLビルダーファイルでfragment caching and Rails 4 cache_digestsを使用するには、cache
メソッドを使用します。これは他のテンプレートとまったく同じです。以下は、(簡略化された)ブログRSSフィードのロシア人形キャッシングの例です:
# feed.xml.builder
xml.instruct! :xml, version: "1.0"
xml.rss version: "2.0", 'xmlns:atom': 'http://www.w3.org/2005/Atom' do
xml.channel do
xml.title "My Blog"
cache "articles/feed-#{@articles.count}-#{@articles.maximum(:updated_at).try(:to_i)}" do
@articles.each do |article|
cache article do
xml.item do
xml.title article.title
xml.description article.body
end
end
end
end
end
end
素晴らしい/非常に役立ちます。私の唯一の変更は、最初の 'cache'行を' feed.xml.builder'ファイルの**最初の**行に移動することでした。できるだけ多くの応答をキャッシュする必要があります。したがって、すべてのヘッダーとxml.channel情報もキャッシュに含めることができます。 –