Django-删除模型后Pytest安装程序崩溃

时间:2019-01-28 15:20:40

标签: django model pytest database-migration

在我的Django微服务中删除旧模型后,pytest无法设置测试数据库。迁移无法正确执行。 但是,删除模型后生成的迁移在我的登台数据库上运行良好。 该问题仅影响新的数据库,在这种情况下,是pytest创建的数据库。

删除模型的操作:

  1. 删除我的模型的所有用例
  2. 删除我的模型
  3. 进行移民
  4. 迁移

pytest数据库创建步骤正在重播迁移历史记录。它应该:

  1. 创建我的模型
  2. 定义约束
  3. 删除我要删除的模型

该错误使我认为,由于Django稍后将其删除,因此模型的创建被推迟了,因此模型约束似乎在模型创建之前就已执行。

self = <django.db.backends.utils.CursorWrapper object at 0x114590198>
sql = 'ALTER TABLE "catalogue_productoffer_competitors" ADD CONSTRAINT "catalogue_productoff_competitor_id_99767623_fk_categorie" FOREIGN KEY ("competitor_id") REFERENCES "categories_competitor" ("id") DEFERRABLE INITIALLY DEFERRED'
django.db.utils.ProgrammingError: relation "categories_competitor" does not exist

感谢您的帮助!

0 个答案:

没有答案