2011-02-03 57 views
7

我是新來Django的世界。運行一些教程應用程序,並在運行python manage.py測試時出現失敗,說該表已經存在。我不確定發生了什麼事。我也在南下,遷移架構時沒有遇到任何錯誤。Django的 - 「manage.py測試」失敗「表已經存在」

任何洞察力,非常感謝。

TIA 喬伊

+0

可能相關:http://stackoverflow.com/questions/3090648/django-south-table-already-exists – payne 2011-02-03 03:31:57

+0

YES!就是這樣,我犯了一些錯誤,並且使得移植與db不同步。乾淨的安裝固定它。 – 2011-02-06 22:20:34

回答

15

這可能是在你的南部遷移的一個錯誤。你沒有看到真正的數據庫問題,因爲遷移的情況下(與 - 也許假的選項)

您可以嘗試重新創建scracth分貝,看看它是否工作。

您也可以通過在settings.py加入SOUTH_TESTS_MIGRATE = False禁用南爲單元測試。使用此選項,將執行常規syncdb以創建測試數據庫。它也將加速測試過程。

我希望它能幫助

0

,如果你用鼻子測試:

DST_RUN_SOUTH_MIGRATIONS =假

0

這也恰好與鼻子時
--cover-package=userdata,incorrectname
一個包的名字是不正確

1

這也發生在我身上的遺留代碼,但另一個原因。

我有兩個型號db_table引用同一個數據庫表。 我知道這是愚蠢的,但它不是我的錯)

而我從來沒有在互聯網上找到任何可以幫助我的東西。 我被冗長的設置爲3(manage.py測試-v 3) 希望這有助於任何人得救。

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

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