簡體   English   中英

南django表已經存在

[英]South django table already exists

我遇到了同樣的問題: django - “manage.py test”失敗“表已經存在”

模式遷移/遷移工作正常(雖然確實有一些問題需要我 - 假,但所有隨后的遷移與南方工作)。 但是當我進行單元測試時,我得到:

(1050, "Table '{tablename}' already exists")

我只是好奇我怎么能繞過這個,以及為什么會這樣。 在上面鏈接的問題中給出的唯一答案是,南方可以被排除在單元測試之外,如果我這樣做,這是否意味着我無法對南方管理的表進行單元測試?

解釋非常感謝:)

亞當

不,這並不意味着。 不要忘記,如果你現在從頭創建它們,Django已經知道你的表應該是什么樣子 - 它只是使用模型定義。 South非常有用,因為它允許您在更改模型時輕松轉換表結構,但是當您運行測試時,您並不關心:您只需要在當前版本的表上運行測試。

所以,是的,在運行測試時禁用South,通過SOUTH_TESTS_MIGRATE = False ,Django將自動為您創建表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM