我有一个自定义用户模型,如下所示:
class User(AbstractBaseUser):
first_name = models.CharField(max_length=32, validators=[alphanumeric])
last_name = models.CharField(max_length=32, validators=[alphanumeric])
email = models.CharField(max_length=512, null=True, blank=True)
username = models.CharField(max_length=32, null=False, primary_key=True)
country_code = models.CharField(max_length=32, default='+91')
mobile_no = models.CharField(max_length=512)
created_on = models.DateTimeField(auto_now_add=True, null=True)
USERNAME_FIELD = 'username'
document_status = models.CharField(default=set_default_doc_status, null=False, max_length=32)
现在我添加了一个新字段:
is_active = models.BooleanField(default=True)
之后我跑:
python manage.py makemigrations
python manage.py migrate
当我查看我的db everthing似乎没问题。新字段将添加到模型中的先前条目中,但是当我尝试访问代码或shell中的字段时,会出现以下错误:
AttributeError: 'User' object has no attribute 'is_active'
即使列存在于db。
中,我也不知道为什么会出现此错误>>> u=User.objects.get(username='a05')
>>> u.is_active
Traceback (most recent call last):
File "<console>", line 1, in <module>
AttributeError: 'User' object has no attribute 'is_active'