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 头部部分添加了 pragma no cache 元标记,但这些都没有帮助。问题依然存在。

有什么建议么?

4

0 回答 0