Django 不强制执行电子邮件验证。忽略帐户\电子邮件\验证设置
我使用两个包来帮助我进行身份验证。一个是Django 不强制执行电子邮件验证。忽略帐户\电子邮件\验证设置,django,django-rest-framework,django-allauth,django-rest-auth,Django,Django Rest Framework,Django Allauth,Django Rest Auth,我使用两个包来帮助我进行身份验证。一个是js\u rest\u auth,另一个是allauth 后者的设置要求用户在登录之前验证其电子邮件地址。我正在设置ACCOUNT\u EMAIL\u VERIFICATION=“mandatory”,但它没有效果。我的相关设置如下所示: INSTALLED_APPS = [ ... "django.contrib.sites", "rest_framework.authtoken",
js\u rest\u auth
,另一个是allauth
后者的设置要求用户在登录之前验证其电子邮件地址。我正在设置ACCOUNT\u EMAIL\u VERIFICATION=“mandatory”
,但它没有效果。我的相关设置如下所示:
INSTALLED_APPS = [
...
"django.contrib.sites",
"rest_framework.authtoken",
"allauth.account",
"allauth.account",
"allauth.socialaccount",
"dj_rest_auth",
....
]
ACCOUNT_EMAIL_VERIFICATION = "mandatory"
ACCOUNT_EMAIL_CONFIRMATION_EXPIRE_DAYS = 90
ACCOUNT_USER_MODEL_EMAIL_FIELD = "email"
ACCOUNT_AUTHENTICATION_METHOD = "email"
ACCOUNT_EMAIL_REQUIRED=True
ACCOUNT_UNIQUE_EMAIL = True
ACCOUNT_USERNAME_REQUIRED=False
ACCOUNT_USER_MODEL_USERNAME_FIELD = "email"
ACCOUNT_PRESERVE_USERNAME_CASING = False
ACCOUNT_ADAPTER = "users.accountadapter.CustomAccountAdapter"
AUTHENTICATION_BACKENDS = [
'django.contrib.auth.backends.ModelBackend',
'allauth.account.auth_backends.AuthenticationBackend',
]
REST_FRAMEWORK = {
....
"DEFAULT_AUTHENTICATION_CLASSES": [
"rest_framework.authentication.TokenAuthentication",
],
"DEFAULT_PERMISSION_CLASSES": [
"rest_framework.permissions.IsAuthenticated",
]
}
我创建的用户未经验证(验证属性为电子邮件地址模型),而是使用is\u active=True
创建的。当我为未经验证的用户发送登录请求时,将发出有效的令牌