When to use the Custom User Model in Django 1.5

ぃ、小莉子 提交于 2019-12-02 18:47:21
Dan Hoerst

You want to extend your user model to the AbstractUser and add your additional fields. AbstractUser inherits all of the standard user profile fields, whereas AbstractBaseUser starts you from scratch without any of those fields.

It's hard to define best practices this close to the release, but it seems that unless you need to drastically redefine the User model, then you should use AbstractUser where possible.

Here are the docs for extending the User model using AbstractUser

Your models.py would then look something like this:

class MyUser(AbstractUser):
    gender = models.DateField()
    location = models.CharField()
    birthday = models.CharField()

MyUser will then have the standard email, password, username, etc fields that come with the User model, and your three additional fields above.

Then you need to add the AUTH_USER_MODEL to your settings.py:

AUTH_USER_MODEL = 'myapp.MyUser'

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!