扩展字段目前有两种方法:
- 扩展字段 新建一张表->然后与原有表创建一对一关系
- 继承django.contrib.auth.models下的AbstractUser类 ,重写User类
两种方式都是官方文档提到的,,实现方法可以在官网以及搜索引擎搜到各大佬的博客上,我今天只分享一下自己遇到的问题及解决方法
我采用的是第2种, 重写User的方法,但是在迁移数据库的时候,遇到问题,
编写好其它表之后,发现User表中字段需要添加于是在models.py 文件
中添加了 ExUser类
from django.db import models
from django.contrib.auth.models import AbstractUser
class ExUser(AbstractUser):
phone = models.CharField(max_length=11, unique=True, blank=True)
class Post(models.Model):
.......
在settings.py文件中添加
AUTH_USER_MODEL = 'app.ExUser'
添加完成后执行python manage.py makemigrations
然后报错
django.db.migrations.exceptions.CircularDependencyError: auth.0011_update_pro