相关疑难解决方法(0)

django的auth_user.username可以是varchar(75)吗?怎么可能这样呢?

这有什么错上运行ALTER TABLE auth_userusernamevarchar(75)因此它可以适应的电子邮件?如果有什么事情会破坏什么?

如果您要更改auth_user.usernamevarchar(75)您需要修改django的位置?这只是在源代码中改变30到75的问题吗?

username = models.CharField(_('username'), max_length=30, unique=True, help_text=_("Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"))
Run Code Online (Sandbox Code Playgroud)

或者这个领域是否还有其他验证需要更改或其他任何后果?

请参阅下面与bartek的评论讨论,了解这样做的原因.

编辑:经过几个月的回顾.对于不了解前提的人:某些应用程序没有要求或希望使用用户名,他们只使用电子邮件进行注册和验证.不幸的是,在django auth.contrib中,用户名是必需的.您可以开始在用户名字段中添加电子邮件,但该字段只有30个字符,而现实世界中的电子邮件可能很长.可能比这里建议的75个字符更长,但75个字符可以容纳最理智的电子邮件地址.问题针对的是这种情况,正如基于电子邮件授权的应用程序所遇到的那样.

django django-models django-authentication

65
推荐指数
4
解决办法
2万
查看次数