django - “manage.py test”失败“表已经存在”

时间:2011-02-03 03:26:39

标签: python django

我是django世界的新手。运行一些教程应用程序,并在运行python manage.py测试时,我得到一个失败,说该表已经存在。我不确定发生了什么。我也在向南奔跑,在迁移架构时我没有遇到任何错误。

非常感谢任何见解。

TIA 乔伊

4 个答案:

答案 0 :(得分:15)

在您的南方迁移中,这可能是一个错误。您没有在真实数据库上看到问题,因为已执行迁移(可能使用 - fake选项)

您可以尝试从scracth重新创建数据库,看看它是否有效。

您还可以通过在settings.py中添加SOUTH_TESTS_MIGRATE = False来停用单元测试功能。使用此选项,将执行常规syncdb以创建测试数据库。它还将加快测试过程。

我希望它有所帮助

答案 1 :(得分:1)

这也发生在遗留代码上,但出于另一个原因。

我有两个模型,db_table引用相同的db表。 我知道那是愚蠢的,但这不是我的错)

我从来没有在互联网上找到任何可以帮助我的东西。 我被详细设置为3(manage.py test -v 3)保存 希望这对任何人都有帮助。

class Bla1(Model):
    some_column = ...
    class Meta:
        db_table = 'some_table'

class Bla2(Model):
    some_column = ...
    class Meta:
        db_table = 'some_table'

答案 2 :(得分:0)

如果你正在测试鼻子:

DST_RUN_SOUTH_MIGRATIONS = False

答案 3 :(得分:0)

这也发生在鼻子时 --cover-package=userdata,incorrectname
包名称之一不正确