我在 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
到模型列表?谢谢。
最佳答案
到目前为止,我认为模型列表是唯一的工作方式。有一个open discussion关于那个具体问题。
关于Django 信号 : receiver and proxy model?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22465555/