我在tests.py中有这段代码:
from models import *
并且在models.py中我有一个信号处理程序并用
注册它post_save.connect( post_save_note, sender=Note )
当我使用./manage.py test main
我发现信号处理程序已注册两次并执行了两次, 我发现这是因为模型导入了两次。
我不能把from models import *
放在测试代码中吗?
我该怎么办?
答案 0 :(得分:9)
您需要确保始终以相同的方式导入模型。
例如,如果你有example1/tests.py
:
from models import *
和另一个包example2/views.py
:
from example1.models import ModelA
然后你会遇到你遇到的问题。解决方案是保持一致,只使用其中一种。