Django 1.8 - 信号 - @receiver 装饰器和 Signal.connect() 方法有什么区别?

Str*_*ire 6 python django signals decorator receiver

他们似乎在做同样的事情。在功能、使用等方面有区别吗?在什么情况下应该使用一个?

谢谢

knb*_*nbk 3

@receiver周围是一层薄薄的包装纸Signal.connect()。唯一的区别是它@receiver不仅可以接受单个信号,还可以接受一个listtuple多个信号,并且它将函数连接到每个信号。

如果你看一下源代码@receiver只会调用signal.connect(func)并返回原始函数。