我想在创建了多个配置文件后向我的模型配置文件(扩展用户模型)添加一个子段字段,然后进入配置文件页面时出现错误,URL中的子段显示:
Django OperationalError: no such column: infrastructure_profile.slug
所以我看着这里,看到了this的答案
它建议我删除所有迁移文件以重新启动数据库,所以我做了
然后我遇到了同样的错误,所以我认为我应该删除所有我已经拥有的没有子域的用户,包括超级用户。
所以我遵循了this的答案
我得到那个错误
django.db.utils.OperationalError: no such column: infrastructure_profile.slug
知道发生了什么吗?
修改
我的models.py包含模型配置文件
class Profile(User):
user = models.OneToOneField(User,parent_link=True,on_delete=models.CASCADE)
bio = models.TextField()
slug = models.SlugField(unique=True,blank=True)
avatar_thumbnail = ProcessedImageField(upload_to='images/',default='/images/default.png',processors=[ResizeToFill(300,300)],format='JPEG',options={'quality': 60})
location = models.TextField()
tags = models.ManyToManyField(Tag)
contact_information = models.TextField()
verified = models.BooleanField(default=False)
counter = models.IntegerField(default=0)
def __str__(self):
return self.user.username
def save(self,*args,**kwargs):
print('self.username')
print(self.user.username)
self.slug = self.user.username
super(Profile,self).save(*args,**kwargs)
def get_absolute_url(self):
return reverse('infrastructure:edit-user-profile',kwargs={'slug': self.slug})