python - 视图 basicapp.views.register 没有返回 HttpResponse 对象。它返回 None 代替)
问题描述
from django.shortcuts import render,HttpResponse
from basicapp.forms import UserForm,UserProfileInfoform
# Create your views here.
def index(request):
return render(request,'basicapp/index.html')
def register(request):
registered = False
if request.method == "POST":
user_form = UserForm(data = request.POST)
profile_form = UserProfileInfoform(data=request.POST)
if user_form.is_valid() and profile_form.is_valid():
user = user_form.save()
user.set_password(user.password)
user.save()
profile = profile_form.save(commit= False)
profile.user = user
if 'profile_pic' in request.FILES:
profile.profile_pic = request.FILES['profile_pic']
profile.save()
registered = True
else:
print(user_form.errors,profile_form.errors)
else:
user_form = UserForm()
profile_form = UserProfileInfoform()
return render(request,'basicapp/registration.html',
{'user_form':user_form,
'profile_form':profile_form,
'registered':registered})
解决方案
尝试使用以下代码:
from django.shortcuts import render,HttpResponse
from basicapp.forms import UserForm,UserProfileInfoform
# Create your views here.
def index(request):
return render(request,'basicapp/index.html')
def register(request):
registered = False
if request.method == "POST":
user_form = UserForm(data = request.POST)
profile_form = UserProfileInfoform(data=request.POST)
if user_form.is_valid() and profile_form.is_valid():
user = user_form.save()
user.set_password(user.password)
user.save()
profile = profile_form.save(commit= False)
profile.user = user
if 'profile_pic' in request.FILES:
profile.profile_pic = request.FILES['profile_pic']
profile.save()
registered = True
else:
print(user_form.errors,profile_form.errors)
else:
user_form = UserForm()
profile_form = UserProfileInfoform()
return render(request,'basicapp/registration.html',
{'user_form':user_form,
'profile_form':profile_form,
'registered':registered})
推荐阅读
- python-3.x - 如何在 docker 更改容器的默认 python 版本?
- sql - 在r中循环sql
- angular - Angular IE11 返回 CORS 错误但数据仍然返回
- sas - SAS中的非完整proc箱线图
- javascript - 带有传单的 Heatmap.js。最大值未按预期工作
- typescript - WebGL 参数类型
- flask - Flask 和 neomodel:ModelDefinitionMismatch
- python - 替换 Pandas 中的列值
- javascript - 如何在 REACT 中为导入的组件设置默认值
- python - 从 index() 获得多个回报