如何解决添加模型属性后出现的django.db.utils.OperationalError: no such column错误
解决Django模型添加字段后出现no such column错误的方法
你在模型里新增字段后出现这个错误,本质是数据库表还没同步模型的变化,按下面步骤操作就能解决:
生成迁移脚本:在项目根目录执行命令
python manage.py makemigrations这个命令会识别你对模型的修改(比如新增的
digital等字段),生成对应的迁移文件存放在对应app的migrations目录下。同步到数据库:接着执行
python manage.py migrate这条命令会把迁移脚本里的修改应用到数据库,自动给对应的表添加新的列。
额外注意事项
- 确认你的app已经在
settings.py的INSTALLED_APPS里注册,否则Django不会识别模型的变化。 - 如果执行
makemigrations没生成文件,检查模型修改是否正确,或者尝试指定app名称:python manage.py makemigrations <你的app名称> - 要是之前的迁移有异常,谨慎使用
python manage.py migrate <app名称> zero回滚所有迁移(会清空对应表数据,操作前务必备份),之后再重新生成和应用迁移。
内容的提问来源于stack exchange,提问作者Huy Xoăn
相关产品推荐
相关产品推荐

