Django扩展自带用户表
models.py 继承AbstractUser
from django.contrib.auth.models import AbstractUser
class User(AbstractUser):
class Meta:
db_table = 'user'
user_id = models.AutoField(primary_key=True)
settings.py
AUTH_USER_MODEL = 'test.User'
test:app
User:自己创建的用户表模型
admin.py
from test.models import User
admin.site.register(User)
迁移数据库
python manage.py makemigrations test
python manage.py migrate
test:app
运行时报错
AttributeError: Manager isn't available; 'auth.User' has been swapped for 'test.User'
解决方法:在调用User前插入下面两行代码
from django.contrib.auth import get_user_model
User = get_user_model()
网友评论