内存表中的Django 1.7不存在单元测试

时间:2015-08-18 18:10:52

标签: django unit-testing

我有一个应用程序,我最近进行了迁移,包括添加一个新表。我可以看到迁移工作,表填充,我可以访问它,等等。即使我运行

python manage.py migrate my_app -l

我可以看到迁移已成功运行。

然而,当我运行单元测试时,我得到:

OperationalError: no such table: my_app_my_table

我能做的唯一事情就是内存数据库没有运行所有的迁移?或者它没有正确地做到这一点?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

可能是您的迁移实际上没有生成您想要的SQL代码,并且可能值得在特定迁移上运行sqlmigrate以确保它生成代码来生成表。

如果SQL代码看起来正确,可能会发生奇怪的事情,并且django认为您运行了迁移,但实际上并没有更改数据库。在这种情况下,您可以尝试还原旧版本的数据库并在其上运行迁移吗?