pycharm 如何解决django.db.utils.OperationalError:无此列

4uqofj5v  于 8个月前  发布在  PyCharm
关注(0)|答案(2)|浏览(131)

enter image description here
我只是想给模型加上其他属性

class BookCardsModel(models.Model):
    class Meta:
        verbose_name = 'Card Books'
        verbose_name_plural = 'Card Books'

    book_cover = models.ImageField()
    book_name = models.CharField(max_length=100)
    book_subtitle = models.CharField(max_length=100)
    book_description = models.TextField(max_length=300)
    full_description = models.TextField(max_length=700)
    book_quantity = models.IntegerField(default=0)
    book_color = models.CharField(max_length=100, blank=True)
    book_size = models.CharField(max_length=100, blank=True)
    digital = models.BooleanField(default=False,null=True,blank=False)
ujv3wf0j

ujv3wf0j1#

在更新django模型之后,您需要创建新的迁移,然后进行迁移
可以使用以下命令

python manage.py makemigrations # to make migrations
python manage.py migrate # to migrate

那么你的实际数据库将被更新,新的列将被添加

eqoofvh9

eqoofvh92#

您可以检查最近的迁移文件,以检查是否应用了所需的列。如果是,您是否将迁移设置为Ayush's answer
如果问题仍然存在,也许你搞砸了你的迁移文件.你可以假装移民

python manage.py migrate --fake appname migration

在迁移时应用--fake或--fake-intial时要小心
你可以在这里详细阅读:Reference
如果问题仍然存在,请考虑上传有问题的迁移和错误日志,以便任何人都可以更快地解决问题。

相关问题