当我使用下面的代码时,第一个if语句总是返回一个False。但是,如果我将其更改为request.POST,它将返回一个True。有谁知道为什么?有没有其他人经历过这个?我使用method =“post”的基本形式发送数据。“if request.method =='POST':”== False,但是“if request.POST”== True。为什么? - Django
def add_new_user(request):
context = RequestContext(request)
if request.method == 'POST':
form = NewUserForm(request.POST)
if form.is_valid():
form.save(commit=True)
return index_input(request)
else:
print form.errors
else:
form = NewUserForm()
return render_to_response('appname/add_new_user.html',
{'form': form}, context)
仅供参考,Django的[文件](https://docs.djangoproject.com/en/dev/ref/request-response/#django.http.HttpRequest.POST)清楚地说'你不应该使用如果request.POST检查使用POST方法。 – alecxe
另请参阅:http://buddylindsey.com/django-request-post-vs-request-method/ – alecxe
但request.post返回true,我的表单保存到数据库。它是request.method ==“POST”总是返回false,无论如何。 – Kazanz