django - Django Allauth 在注册页面中要求输入密码 3 次
问题描述
我正在尝试使用 django-allauth 实现一个注册表单,并且一切正常。但是,我已经实现了一个CustomUserCreationForm
显示下面列出的字段的方法,从那时起它一直在要求输入密码 3 次。我只想询问一次密码,但现在似乎自动添加了密码和密码确认字段(见下图)。即使我删除了所有字段,两个密码字段仍然存在。在我的设置中,我已经设置ACCOUNT_SIGNUP_PASSWORD_ENTER_TWICE = False
了密码字段,但仍然显示了三次。任何帮助,将不胜感激!
表格.py
from django.contrib.auth import get_user_model
from .models import CustomUser
from django.contrib.auth.forms import UserCreationForm, UserChangeForm
class CustomUserCreationForm(UserCreationForm):
class Meta:
model = get_user_model()
fields = ("first_name", "last_name", "mobile", "email", "password")
模型.py
from django.contrib.auth.models import AbstractUser
from django.db import models
class CustomUser(AbstractUser):
first_name = models.CharField(max_length=55, default="")
last_name = models.CharField(max_length=55, default="")
mobile = models.CharField(max_length=12, default="")
Allauth 设置
AUTH_USER_MODEL = "accounts.CustomUser"
SITE_ID = 1
AUTHENTICATION_BACKENDS = [
"django.contrib.auth.backends.ModelBackend",
"allauth.account.auth_backends.AuthenticationBackend",
]
EMAIL_BACKEND = "django.core.mail.backends.console.EmailBackend"
LOGIN_REDIRECT_URL = "home"
ACCOUNT_LOGOUT_REDIRECT = "home"
ACCOUNT_SESSION_REMEMBER = True
ACCOUNT_USERNAME_REQUIRED = False
ACCOUNT_AUTHENTICATION_METHOD = "email"
ACCOUNT_EMAIL_REQUIRED = True
ACCOUNT_UNIQUE_EMAIL = True
ACCOUNT_SIGNUP_PASSWORD_ENTER_TWICE = False
ACCOUNT_FORMS = {"signup": "accounts.forms.CustomUserCreationForm"}
HTML 输出
解决方案
尝试这个:
class CustomUserCreationForm(UserCreationForm):
class Meta(UserCreationForm.Meta):
model = CustomUser
fields = UserCreationForm.Meta.fields + ("first_name", "last_name", "mobile")
请注意,您只需要添加自定义字段。在您的情况下,您在密码已经存在时添加了密码 [1]。
关于 ACCOUNT_SIGNUP_PASSWORD_ENTER_TWICE,您使用的是哪个版本的 Django?ACCOUNT_SIGNUP_PASSWORD_VERIFICATION 有效吗?此设置用于预发布 0.26.0 (2016-07-24) [2]。
参考文献 [1]:https ://docs.djangoproject.com/en/3.1/topics/auth/customizing/
推荐阅读
- python - 使用 Python SDK 验证“DefaultAzureCredential()”?
- c++ - 当它们离开函数范围时,还有其他方法可以破坏对象吗?
- assembly - 在 MIPS 汇编中打印和读取浮点数
- positioning - 从中心缩放 konva 图像并在重绘时保持位置
- amazon-web-services - 具有 EC2 实例的 EBS 卷的 IAM 策略
- vb.net - System.NullReferenceException 与 datagridview
- c# - Service Fabric 远程处理异常 -> 从 v1 升级到 v2
- google-chrome - 使用“未定义”时的 Javascript 断点
- java - Javafx鼠标事件y坐标偏移在子场景中不正确
- cmake - 为什么设置 -DVPCKG_TOOLCHAIN_FILE 可以让我找到包,而 set(VCPKG_TOOLCHAIN_FILE ...) 不能?