从django-allauth中删除'username'字段 [英] Remove 'username' field from django-allauth

查看:190
本文介绍了从django-allauth中删除'username'字段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当django注册不支持django 1.5和自定义用户模型。我正在尝试使用django-allauth,从头看看它是伟大的产品。

When django-registration doesn't support django 1.5 and custom user model. I'm trying use django-allauth, from first look it's great product.

问题我有 - 用户名字段需要,但在我的应用程序,我没有用户名。所以,allauth文档说:

Problem i have - username field required, but in my app i don't have username's. So, allauth documentation says:

**Available settings:**
ACCOUNT_AUTHENTICATION_METHOD (="username" | "email" | "username_email")

指定要使用的登录方法 - 用户是否通过输入登录他的用户名,电子邮件地址或两者之一。

Specifies the login method to use -- whether the user logs in by entering his username, e-mail address, or either one of both.

好的,我完成了,并且出现错误:

AssertionError at /accounts/signup/
No exception supplied

models.py:

class MyUser(AbstractBaseUser, PermissionsMixin):
    title = models.CharField ('Name', max_length=100)
    email = models.EmailField('Email', max_length=255, unique=True)
    ...

settings.py

ACCOUNT_USERNAME_REQUIRED = False
ACCOUNT_AUTHENTICATION_METHOD = ('email')
AUTH_USER_MODEL = 'internboard.MyUser'

我做错了什么?

推荐答案

感谢,我发现,我的任务正确的设置:

Thanks, i found, right settings for my task:

ACCOUNT_AUTHENTICATION_METHOD = 'email'
ACCOUNT_EMAIL_REQUIRED = True
ACCOUNT_UNIQUE_EMAIL = True
ACCOUNT_USERNAME_REQUIRED = False

这篇关于从django-allauth中删除'username'字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆