django信号:接收器和代理模型?

时间:2014-03-17 21:14:41

标签: django django-signals

我在post_save信号上设置接收器,我希望通过将发送器设置为主模型来捕获模型的所有代理的信号,但它似乎不起作用:

class MyObject(models.Model):
    ....

class MyObjectProxy(MyObject):

    class Meta:
        proxy = True

# The receiver
# How to avoid writing another one for sender=MyObjectProxy ?
@receiver(post_save, sender=MyObject)
...

发生这种情况时,我的接收器不会被触发:

obj = MyObjectProxy()
obj.save()

这是正常的吗? 我必须为每个代理设置一个接收器? 我可以将sender设置为模型列表吗?

感谢。

1 个答案:

答案 0 :(得分:1)

截至目前,我认为模型列表是唯一可行的方式。有关该特定问题的open discussion