1 回答
TA貢獻1993條經驗 獲得超6個贊
我認為您正在嘗試使用默認用戶模型創建用戶。如果您想在驗證失敗后渲染帶有錯誤的表單,我認為有必要將表單作為上下文傳遞給渲染方法,以便模板可以使用錯誤數據重新渲染。然后您可以訪問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})
添加回答
舉報
