1

製品のリストを表示するページがあります。リクエストごとにすべての製品をリストに表示していたので、django が提供する標準のキャッシュ ミドルウェアを使用していました。

ここで、表示される製品の数を制限し、すべての中間結果もキャッシュにキャッシュしたいので、常にすべてのページを生成する必要はありません。例: リストに 9 つの製品があり、一度に 3 つの製品を表示するとします。

0 から 2、3 から 5、6 から 8 の製品を含む 1 つのページを作成します。それらすべてにアクセスするための URL は同じになります。たとえば、「Vary」ヘッダーに何かを追加する標準のキャッシュミドルウェアを使用することは可能ですか? 初期インデックス (0、3、または 6) をどこかに追加して、標準のデコレータのいずれかを使用できますか?

4

2 に答える 2

0

解決策を見つけました。#django irc チャンネルの提案に基づいて、render_to_response によって返された応答をビュー内にキャッシュしています

于 2012-04-17T14:07:16.740 に答える
0

使用しているミドルウェアや関連するビュー デコレータなど、質問にさらに説明を追加する必要があります。

私が言えることは、Django はそれ自体で GET パラメータを気にするということです。

/list/?page=1

そのためのページ キャッシュには、

/list/?page=2

于 2012-04-16T22:39:04.740 に答える