我正在构建一个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 中通过单击地址栏按回车键(,他提出的预览请求将被保留。 当有人重新加载页面时,渲染Page((函数被调用但没有请求(显然,request.method == 'POST'语句是False(。有没有简单的方法可以实现这一目标?这是浏览器的问题/功能吗?这是我必须在 html 代码中做的事情吗?
我只能用非常复杂的方法来做到这一点。例如,显式保存请求数据,然后在 JavaScript 中编写脚本,当有人重新加载页面时,该脚本会创建上一个请求的副本。我很确定 django 中有一种更简单的方法来实现这一目标!?
你可以试试:
<meta HTTP-EQUIV="pragma" CONTENT="no-cache">
<meta HTTP-EQUIV="Cache-Control" CONTENT="no-store, must-revalidate">
<meta HTTP-EQUIV="expires" CONTENT="0">
或使用 js 重新加载数据