【发布时间】:2011-09-10 23:46:05
【问题描述】:
在 Django 中,我的捕获 pre_save 信号的代码运行良好。但是,在 tests.py 中的测试用例中,信号处理程序无法接收任何内容。这个问题有提示吗?
- 看来我的测试用例和信号处理程序位于不同的应用程序中。这是问题的原因吗?
【问题讨论】:
标签: python django unit-testing django-models django-signals
在 Django 中,我的捕获 pre_save 信号的代码运行良好。但是,在 tests.py 中的测试用例中,信号处理程序无法接收任何内容。这个问题有提示吗?
【问题讨论】:
标签: python django unit-testing django-models django-signals
似乎我的测试用例和信号处理程序位于不同的应用程序中。这是问题的原因吗?
是的。每个应用程序的tests.py 都是原子的。 import您的信号注册码或在您的测试中手动连接它们以确保它们正在监听:
你可以把信号处理和 您喜欢的任何地方的注册码。 但是,您需要确保 它所在的模块会提前导入 on 以便信号处理得到 在任何信号需要之前注册 发送出去。
【讨论】: