0

我正在构建一个 django 应用程序。在我看来,我有一个函数可以进行 POST 表单请求并呈现一个依赖于它的页面:它看起来很简单:

def renderPage(request):

    if request.method == 'POST':
        form = ExampleForm(request.POST)
        if form.is_valid():
            # Do something with the form data

            #here i render the page and pass some data to it
            return render(request, "main/mypage.html", {"example" : example, ...})
    ...

这就像它应该的那样工作。但是现在我想如果有人在呈现的页面上并且他重新加载页面(例如,在 chrome 中通过单击地址栏并按下回车键),他所做的预览请求被保留。当有人重新加载页面时,调用了 renderPage() 函数但没有请求(显然 request.method == 'POST' 语句为 False)。有没有简单的方法来实现这一目标?这是浏览器的问题/功能吗?这是我必须在我的 html 代码中做的事情吗?

我只能用非常复杂的方法来做到这一点。例如,显式保存请求数据,然后在 JavaScript 中编写一个脚本,当有人重新加载页面时创建上一个请求的副本。我很确定在 django 中有一种更简单的方法来实现这一点!?

4

1 回答 1

0

你可以试试:

<meta HTTP-EQUIV="pragma" CONTENT="no-cache">       
<meta HTTP-EQUIV="Cache-Control" CONTENT="no-store, must-revalidate">       
<meta HTTP-EQUIV="expires" CONTENT="0">

或者使用js重新加载数据

于 2018-06-03T13:30:39.610 回答