postgresql django:app x中的migration x没有Migration类

tct7dpnv  于 2023-04-29  发布在  PostgreSQL
关注(0)|答案(8)|浏览(164)

这里是确切的错误

django.db.migrations.loader.BadMigrationError: Migration 0001_initial in app django_comments has no Migration class

我不知道这意味着什么我不知道该去哪里。我做了一些工作与我的venv,使一个新的,然后我试图让一切恢复正常。安装这个和那个。..我失去了我所做的一切,因为我的笔记本电脑死了,这真的让我很生气。
你知道接下来该怎么办吗?
编辑:
如果我尝试升级django_comments,我会得到以下错误:

Could not find a version that satisfies the requirement django-comments (from versions: 0.2a, 0.3.1a, 0.3.2a, 0.3.3a, 0.3a, 1.0.0.b, 1.0.0.b, 1.0.0.b)

打扫卫生.. No distributions matching the version for django-comments在/home/jeff/中存储失败的调试日志。pip/pip.log

xmd2e60i

xmd2e60i1#

我遇到了这个问题,结果是我不小心将一个非迁移文件复制到了我的一个迁移文件夹中。删 debugging 误文件为我修复了这个问题。

fd3cxomn

fd3cxomn2#

由于问题与迁移有关,因此您必须首先了解它是如何工作的,django检查您的数据库模式,将其与您的模型进行比较,然后生成迁移脚本。每个迁移脚本只执行一次,因为django一直在跟踪你的迁移。这是由一个名为django_migrations的表管理的,该表是在第一次运行迁移时在数据库中创建的。所以我建议两件事:
1.如果你的数据库中没有数据,或者没有重要的数据,那么我建议你删除它并创建一个新的数据库,然后再次应用所有的迁移
1.如果你有重要的数据,试着在django_migrations表中查找并删除包含django_comments迁移的行,很可能还有对应的表,这样你就可以再次应用迁移了

8yoxcaq7

8yoxcaq73#

您可能正在使用旧版本的django-contrib-comments,它只支持Django 1。6.它将在migrations/文件夹中有South迁移,而不是新的Django迁移。
要解决此问题,只需升级django-contrib-comments

pip install -U django-contrib-comments
ebdffaop

ebdffaop4#

对我来说,有问题的迁移文件是空的。删除它解决了我的问题

iszxjhcz

iszxjhcz5#

我在迁移文件夹里有一个不属于那里的文件。通过删除放错位置的文件,我解决了这个问题。

xxb16uws

xxb16uws6#

  • 在C中找到python的根目录:驱动器,然后删除python,也删除pip。
  • 删除这两个项目后,下载新的Python并重新安装。
5ktev3wc

5ktev3wc7#

我已经通过符号链接在我的定制APP和Django App之间共享了我的Django ORM DB模型:ln -s

rseugnpd

rseugnpd8#

对我来说,我不小心把其他文件(意见。py)中的错误。
应用程序X中的Migration X没有Migration类
这意味着迁移加载器在迁移目录中的每个py文件中搜索类迁移,如果没有找到迁移类,则会引发此错误

相关问题