1 回答
TA贡献1993条经验 获得超5个赞
我认为您正在尝试使用默认用户模型创建用户。如果您想在验证失败后渲染带有错误的表单,我认为有必要将表单作为上下文传递给渲染方法,以便模板可以使用错误数据重新渲染。然后您可以访问form.errors所有字段错误、form.non_field_errors所有非字段错误或form.fieldname.errors特定字段错误的错误,例如:form.user_name.errors。
def create_user(request):
form = RegisterUser(request.POST)
if form.is_valid():
# user = User(user_name = form.cleaned_data['user_name'],
user_name = form.cleaned_data['user_name'
password = form.cleaned_data['password'],
email = form.cleaned_data['email'],
phone = form.cleaned_data['phone'],)
user = User.create(username, email)
user.set_password(password)
user.save()
return redirect("index")
else:
messages.error(request, "Invalid data")
return render(request, 'your_form.html', {'form': form})
添加回答
举报