我正在构建一个 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 中有一种更简单的方法来实现这一点!?