我的Django(1.6.2)项目在我的virtualenv上安装了第三方Django App。
我需要设置一个Django信号来监听特定模型上的post_save操作(virtualenv中的第三方)。我已经对下面的代码进行了测试,但它无效。
我已将代码放入" views.py"。我认为这是代码无效的原因。
from django.db.models.signals import post_save
from django.dispatch import receiver
from paypal.standard.models import PayPalStandardBase
@receiver(post_save, sender=PayPalStandardBase)
def my_handler(sender, **kwargs):
pdb.set_trace()
所以,我的问题是。我应该在哪里放置这段代码?
答案 0 :(得分:2)
你把它放在哪里并不重要。唯一要记住的是代码必须实际运行,这意味着Django需要在某些时候导入它。如果您的视图文件包含一些由URL引用并由urls.py导入的实际视图,那就没问题。如果没有,请将其放在导入的地方。