所以我读了Django源代码(后1.5),你现在可以将多个多个信号注册到接收函数:
def receiver(signal, **kwargs):
"""
A decorator for connecting receivers to signals. Used by passing in the
signal (or list of signals) and keyword arguments to connect::
@receiver(post_save, sender=MyModel)
def signal_receiver(sender, **kwargs):
...
@receiver([post_save, post_delete], sender=MyModel)
def signals_receiver(sender, **kwargs):
...
"""
... implementation code...
Run Code Online (Sandbox Code Playgroud)
但是,我想将来自不同发送者的多个post_save信号注册到同一个函数.现在,我只是打电话
post_save.connect(fn_name, model_name)
Run Code Online (Sandbox Code Playgroud)
对于我拥有的每个型号.使用新的Django 1.5 @receiver装饰器功能有更好的方法吗?
django ×1