我是django的新手,并尝试制作一个用户注册表单,几乎没有验证。 除此之外,我还想要一个用户名建议代码,告诉用户他试图注册的用户名是否可用或已在使用中。然后它应该提供一些可供选择的建议。任何可能在同一项目或同一项目上工作的人都可以帮助我解决这个问题。
由于
答案 0 :(得分:1)
查看django-registration应用程序。并查看Class registration.forms.RegistrationForm及其方法clean_username。
扩展表单以建议一些用户名应该很容易。
以下是一些示例代码,用于生成带编号后缀的唯一用户名:
username # filled with user input or first/lastname etc.
#check for other profile with equal names (and those with a postfix)
others = [int(username.replace(name, "0"))
for p in User.objects.filter(username__startswith=username).exclude(user=self.user)
if username.replace(name, "0").isdigit()]
#do we need a postfix
if len(others) > 0 and 0 in others:
username = "%s%d" % (username, max(others) + 1)
您可以在表单选择字段中填写生成的名称: http://docs.djangoproject.com/en/dev/ref/forms/fields/#choicefield