4

サイドバーに入れたい小さなスニペットがあります。スニペットは各ページに表示され、安価に取得できますが (私の非常に遅いネットブックでは約 50 ミリ秒です!)、あまり頻繁に変更されないため、キャッシュしたいと思います (部分的には、まだ Django のキャッシュを使用したことがないためです)。フレームワーク、そして私は学びたいです)。

ここに行く最善の方法がわかりません-ミドルウェアまたはカスタムテンプレートタグ? これらのアプローチでキャッシングを実装するのがどれほど簡単かはわかりません。これは、実行したい非常に標準的なこと (つまり、各ページに表示されるフラグメントのフラグメント キャッシュ) であるため、Djangonicの方法があると確信していますが、それが何であるかを見つけることができません。

どのようにしますか?

4

2 に答える 2

4

これは、テンプレートフラグメントのキャッシュに最適です。

于 2009-09-21T09:55:36.947 に答える
2

ミドルウェアを使用する必要はないと思います。これには、カスタム テンプレート タグが機能します。ステータス メッセージのようなことをしているので、現在のビューが何であれ、それは無関係であるため、タグは間違いなく適切です。

キャッシュ バックエンドをセットアップするだけで (これは非常に簡単に実行できますcache.set())、ステータス メッセージの保存とcache.get()取得に使用できるメソッドにアクセスできます。ステータス メッセージが更新されるたびに、必ずキャッシュをクリアしてください。

于 2009-09-21T09:59:10.750 に答える