gpt4 book ai didi

django - 在 Django 中删除或禁用用户的用户名

转载 作者:行者123 更新时间:2023-12-02 07:25:01 27 4
gpt4 key购买 nike

有没有办法在 Django 中完全删除或禁用用户名?

我只想使用电子邮件和密码。

最佳答案

您无法禁用它,但当用户使用电子邮件地址注册时,您可以生成随机或由电子邮件地址派生的占位符用户名。注册表单的 clean() 方法中类似的内容将从电子邮件地址创建唯一的用户名(因为您不能使用非字母数字的用户名):

highest_user_id = User.objects.all().order_by('-id')[0].id #or something more efficient
leading_part_of_email = user_email.split('@',1)[0]
leading_part_of_email = re.sub(r'[^a-zA-Z0-9+]', '', leading_part_of_email) #remove non-alphanumerics
truncated_part_of_email = leading_part_of_email[:3] + leading_part_of_email[-3:] #first three and last three - will turn "ab@foo.com" into "abab" or b@ into "bb", which is ok
derived_username = '%s%s' % (truncated_part_of_email, highest_user_id+1)

关于django - 在 Django 中删除或禁用用户的用户名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2719993/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com