【发布时间】:2015-02-05 13:26:43
【问题描述】:
我有一个注册表单,只要求输入电子邮件和密码。当用户注册时,django-allauth 通过删除用户电子邮件地址的“@email”后缀为该用户创建一个用户名。
例如,如果用户使用“some-user@example.com”注册,他的用户名将是“some-user”,如果另一个用户使用“some-user@gmail.com”注册,那么他的用户名将是“some-userr”
但我想要的是用户的用户名和电子邮件具有相同的值。
那么如何配置 django-allauth 以将用户名设置为用户的电子邮件而不去除其后缀?
如果可能的话,我如何在不创建自定义用户的情况下做到这一点。
在我的 settings.py 中:
#########################
# AllAuth Configuration #
#########################
ACCOUNT_AUTHENTICATION_METHOD = 'email'
ACCOUNT_EMAIL_REQUIRED = True
ACCOUNT_UNIQUE_EMAIL = True
ACCOUNT_USERNAME_REQUIRED = False
ACCOUNT_EMAIL_VERIFICATION = 'mandatory'
ACCOUNT_PASSWORD_MIN_LENGTH = 8
【问题讨论】:
-
为什么需要用户名与电子邮件相同。无论如何,您都可以允许您的用户使用该电子邮件地址进行注册。
标签: python django django-models django-forms django-allauth