gpt4 book ai didi

django - 在Django中request.method ==“POST”是什么意思?

转载 作者:行者123 更新时间:2023-12-02 09:50:55 31 4
gpt4 key购买 nike

我在我的观点中使用了很多东西,但是我想知道这到底意味着什么。

当我们写request.method == "GET"request.method == "POST"时会发生什么?

最佳答案

request.method == "POST"的结果是一个布尔值-True如果来自用户的当前请求是使用HTTP“ POST”方法执行的,则False否则(通常是HTTP“ GET”,但是还有其他方法)。

您可以阅读有关GET和POST in answers to the question Alasadir pointed you to之间区别的更多信息。简而言之,POST请求通常用于表单提交-如果处理表单会更改服务器端状态(例如,在注册表单的情况下,将用户添加到数据库),则POST请求是必需的。 GET用于普通的HTTP请求(例如,当您仅在浏览器中键入URL时)以及可以进行处理而没有任何副作用的表单(例如,搜索表单)。

该代码通常用于条件语句中,以区分用于处理已提交表单的代码和用于显示未绑定表单的代码:

if request.method == "POST":
# HTTP Method POST. That means the form was submitted by a user
# and we can find her filled out answers using the request.POST QueryDict
else:
# Normal GET Request (most likely).
# We should probably display the form, so it can be filled
# out by the user and submitted.




这是另一个使用Django Forms库的示例 taken straight from Django documentation

from django.shortcuts import render
from django.http import HttpResponseRedirect

def contact(request):
if request.method == 'POST': # If the form has been submitted...
form = ContactForm(request.POST) # A form bound to the POST data
if form.is_valid(): # All validation rules pass
# Process the data in form.cleaned_data
# ...
return HttpResponseRedirect('/thanks/') # Redirect after POST
else:
form = ContactForm() # An unbound form

return render(request, 'contact.html', {
'form': form,
})

关于django - 在Django中request.method ==“POST”是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19132210/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com