python - 部署搬运工时 docker-compose 错误
问题描述
我正在使用 Portainer 部署 django。
部署时,django 镜像日志中出现以下错误。
django.db.migrations.exceptions.InconsistentMigrationHistory:迁移 account.0001_initial 在其依赖 users.0001_initial 之前应用于数据库“默认”。
我删除了迁移文件并尝试再次迁移并部署,但发生了同样的错误。
也许我认为问题可能是由自定义用户模型引起的。
我应该怎么办?
解决方案
首先,您不能像那样简单地删除迁移文件,因为迁移状态存储在您的数据库中,而不仅仅是在您的迁移文件中。
打开你的数据库并检查你的 django_migrations 表,你就会明白你的错误来自哪里。错误消息意味着 Django 发现迁移account.0001_initial
存在于 django_migrations 表上users.0001_initial
,但users.0001_initial
没有account.0001_initial
. 所以它不知道如何处理冲突。
如果您的数据不重要,只需删除您的数据库并创建一个新数据库即可。其次,您必须按照流程来逆转迁移,而不是在此处删除它https://docs.djangoproject.com/en/3.2/topics/migrations/#reversing-migrations
我建议您阅读整个https://docs.djangoproject.com/en/3.2/topics/migrations/。
推荐阅读
- google-cloud-platform - 不支持直接通过 Key ID 属性设置主键 - Spanner 数据库
- java - 我如何设置 setCapability testName 成为黄瓜场景
- vue.js - 如何为子文件夹构建 vue.js
- debugging - VS Code 调试器显示无限深的 PyTorch 张量
- python - 如何在二叉树中列出一个人的所有表亲
- java - 将 html 页面更改为 .png
- java - 如何使用 google ml api 修复无效范围(400 错误请求)
- rest - 单击按钮时刷新 amp-list 内容
- ios - iOS 13.1 PDFKit PDFView.go(to page:) 不工作
- node.js - 在前端显示 pdf blob 字符串作为预览