繁体   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