Django信号接收器功能的规范位置

时间:2012-04-13 15:34:31

标签: django

是否有实现Django信号接收器功能的规范位置? docs建议使用models.py,但在我看来,如果将它们组织成一个单独的文件,它会更清晰。 (例如,handlers.py,receivers.py)

1 个答案:

答案 0 :(得分:-1)

文档推荐使用models.py,因为它是一个始终为每个应用加载的文件。你可以使用你想要的任何文件结构,但不,Django不会为信号寻找特定的文件。您必须导入处理程序并在models.py中连接它们。例如:

handlers.py

def my_post_save_handler(sender, instance, created, *args, **kwargs):
    # do something

models.py

from handlers import my_post_save_handler

post_save.connect(my_post_save_handler, sender=MyClass)