操作错误 Django 3.0 中没有这样的列

问题描述 投票:0回答:2

我更改了其中一个模型的属性名称。当我在

models.py
脚本中进行更改后,我尝试使用
makemigrations
命令迁移它,但它一直给我一个错误,即电子邮件字段不可为空,并且数据库需要一些内容来填充现有行。所以我尝试反转之前的迁移并运行命令
python3 manage.py <app_name> zero
。 此后,之前的不可为空字段错误在命令行中得到解决,但一旦我在浏览器上提交表单,我就会遇到此操作错误。 问题的关键是如何改变
models.py
中其中一个模型的属性并处理随之而来的迁移?

enter image description here

django django-models
2个回答
1
投票

在进行此类更改时,您可能需要删除数据库或运行 python manage.py 刷新命令。如果您不想这样做,只需添加一次性默认值(确保其类型正确)。


0
投票

我通过刷新数据库并再次迁移它解决了这个问题, 在终端或cmd中运行 ((run python manage.pylush)) 然后运行 ((python manage.py makemigrations)) 和 ((python manage.py migrate)) 你的问题就会解决!

© www.soinside.com 2019 - 2024. All rights reserved.