任何人都知道一个好的黑客,使django注册使用电子邮件作为用户名?

ZXC*_*XCA 3 python django django-registration

我打算在我的网站上进行电子邮件注册激活,这将很快启动.我刚刚开始关注django-registration,我对django上提供的其他电子邮件注册激活系统持开放态度.

我唯一的要求是,对于我的网站,我实际上并没有使用用户名.而是用户使用他们的电子邮件和密码登录.我希望得到专家的意见如何修改Django的登记干净安全地用于这一目的.

如果有更容易扩展的解决方案,请随时在此处发布.

mik*_*iku 6

我们使用django-registration自定义后端,我们覆盖(或定义)clean注册表单的方法:

def clean(self):
    ...
    # use the email as the username 
    if 'email' in self.cleaned_data:
        self.cleaned_data['username'] = self.cleaned_data['email']
Run Code Online (Sandbox Code Playgroud)

还有其他方法:

请注意,默认情况下,用户名只能是30个字符长.你也需要一个黑客攻击: