2

こんにちは、フォームと多くの入力を含むテンプレートがあり、ビューへの POST リクエストを介してデータを渡し、それらを処理して結果を別のテンプレートに送信します。最終的なテンプレートで、ブラウザの戻るボタンを使用して最初のビューにジャンプすると、古いデータが再び表示されます。ページを更新すると、古いデータがフラッシュされ、新しいデータが挿入され、再度送信されますが、最終的なビューを見ると古いデータが残っています。デバッグサーバーを再起動しても問題は残ります。ブラウザのキャッシュをフラッシュするだけで解決できる(場合によっては解決できない)データキャッシングの問題があるようです。これはビュー コードです: http://dpaste.com/643569/と最初のテンプレート コード: http://dpaste.com/640960/. ここstackoverflow.comの誰かが、それを制御する「キャッシュナビゲーター」であると言い、カスタムミドルウェアを使用して無効にすることを提案したので、そのアドバイスに従いました:

    #middleware.py

    from django.http import HttpResponse

    class NoCacheMiddleware(object):

    def process_response(self, request, response):
        response['Pragma'] = 'no-cache'
        response['Cache-Control'] = 'no-cache must-revalidate proxy-revalidate no-  store'
        return response

my_app/util にファイル middleware.py を作成し、それを settings.py のミドルウェア セクションに挿入しました。また、html の head セクションに pragma no cache meta tag を追加しましたが、どれも役に立ちませんでした。問題は残ります。

助言がありますか?

4

0 に答える 0