我已经创建了一个用户注册表,每件事看起来都很好,但当我尝试注册新用户时,它会带回相同的表单,而我将其重定向到主页。另外,当我转到admin查找新的注册用户时,我什么也看不到
这适用于python 3.7.3、django 2.2.3和mysql 5.7.26。我试了一次又一次,每件事似乎都很好,但我仍然不能实现我想要的
forms.py
class NewUserForm(UserCreationForm):
email = forms.EmailField(required=True)
class Meta:
model = User
fields = ("username","email","password1","password2")
views.py
def register(request):
if request.method == "POST":
user_form = UserCreationForm(request.POST)
if user_form.is_valid():
user = user_form.save()
username = user_form.cleaned_data.get("username")
raw_password = user_form.cleaned_data.get("password1")
user = authenticate(username=username, password=raw_password)
login(request, user)
return redirect("loststuffapp:IndexView")
else:
for msg in user_form.error_messages:
print(user_form.error_messages[msg])
else:
user_form = UserCreationForm
return render(
request,
"loststuffapp/register.html",
context={"user_form":user_form}
)
register.html
{% extends "loststuffapp/base.html" %}
{% block content %}
<form method="POST">
{% csrf_token %}
{{user_form.as_p}}
<button type="submit" style="background-color:
yellow">Register</button>>
If you already have an account, <a href="/Register">login</a> instead
{% endblock %}
转载请注明出处:http://www.jlhfw88.com/article/20230328/1084349.html