当前位置: 首页 > article >正文

python migate执行报错

一、背景

        前期手工调整了数据库表字段,导致django的makemigrations目录下的文件结构不一致,再次更新models.py时,执行报错:

django.db.utils.OperationalError: (1054, "Unknown column 'tag' in 'records_record'")

        执行 python manage.py showmigrations records结果如下,0009没有执行。

records

 [X] 0001_initial

 [X] 0002_emailsettings_systemsettings_record_suspend_reason_and_more

 [X] 0003_alter_record_tag_profile

 [X] 0004_create_audit_role

 [X] 0005_alter_record_tag_operationlog_auditlog

 [X] 0006_task_alter_record_tag

 [X] 0007_record_is_key_task

 [X] 0008_record_work_hours

 [ ] 0009_alter_record_tag

二、解决方法

(一)强制应用迁移(谨慎)

        如果你确定 records.0009_alter_record_tag 已经实际修改了数据库结构,但 _django_migrations 表中没有记录这一点,你可以尝试使用 --fake 参数强制将该迁移标记为已应用。不过这种方法应当非常谨慎地使用,因为它不会真正改变数据库结构,只会在 _django_migrations 表中做标记。

命令:

python manage.py migrate records 0009 --fake

(.venv) PS C:\Users\itops> python manage.py migrate records 0009 --fake

Operations to perform:

  Target specific migration: 0009_alter_record_tag, from records

Running migrations:

  Applying records.0009_alter_record_tag... FAKED

(.venv) PS C:\Users\itops> python manage.py showmigrations records     

records

 [X] 0001_initial

 [X] 0002_emailsettings_systemsettings_record_suspend_reason_and_more

 [X] 0003_alter_record_tag_profile

 [X] 0004_create_audit_role

 [X] 0005_alter_record_tag_operationlog_auditlog

 [X] 0006_task_alter_record_tag

 [X] 0007_record_is_key_task

 [X] 0008_record_work_hours

 [X] 0009_alter_record_tag

        然后继续应用后续的迁移:

pythion manage.py makemigrations

python manage.py migrate


http://www.kler.cn/a/539251.html

相关文章:

  • 增量hdfs数据追平
  • Vue与Konva:解锁Canvas绘图的无限可能
  • 【自开发工具】SQLSERVER的ImpDp和ExpDp工具汇总
  • “深入浅出”系列之C++:(18)C++11
  • PyTorch Profiler 的使用
  • Deepseek的MLA技术原理介绍
  • 山东大学软件学院人机交互期末复习笔记
  • android的DataBinding的使用
  • 【CubeMX-HAL库】STM32F407—无刷电机闭环控制
  • 【WebSocket探秘】解锁 WebSocket:开启实时交互新境界
  • React 实现自定义进度条(类似于ant design中的progress)
  • Log4j2在Spring项目中的集成与应用
  • 深度求索(DeepSeek)的AI革命:NLP、CV与智能应用的技术跃迁
  • 论文阅读:MGMAE : Motion Guided Masking for Video Masked Autoencoding
  • Deepseek的MLA技术原理介绍
  • C++实现黑白棋小游戏
  • Python和JavaScript在字符串比较上的差异
  • 高性能分布式全局ID生成器-雪花算法实现
  • 【设计模式】【行为型模式】模板方法模式(Template Method)
  • DeepSeek-R1 智能知识库系统使用指南
  • 上拉触底案例
  • 使用docker搭建FastDFS文件服务
  • 探头特征点创建
  • 数据库5(MySQL版)
  • Spring Boot单元测试实战指南
  • 蓝桥与力扣刷题(94 二叉树的中序遍历)