Python Django信号不';行不通

Python Django信号不';行不通,python,django,django-signals,Python,Django,Django Signals,My models.py:> 我的信号。py:> 我正在测试Aval模型的信号post_save,当我保存一些对象Aval时,它不会打印“Aval已保存”。我做错了什么?Django=1.7: 可以在django.apps.AppConfig.ready中注册信号 如信号和AppConfig 这个代码应该放在哪里 严格地说,信号处理和注册码都可以使用 任何你喜欢的地方,尽管建议避免 要最小化的应用程序根模块及其模型模块 导入代码的副作用 在实践中,信号处理程序通常在信号中定义 与之相关的应用程序

My models.py:>

我的信号。py:>


我正在测试Aval模型的信号post_save,当我保存一些对象Aval时,它不会打印“Aval已保存”。我做错了什么?

Django<1.7:

你应该包括:

import signals
到应用程序的
\uuuu init\uuuuu.py
文件

编辑:Django>=1.7:

可以在
django.apps.AppConfig.ready中注册信号
如信号和
AppConfig

这个代码应该放在哪里

严格地说,信号处理和注册码都可以使用 任何你喜欢的地方,尽管建议避免 要最小化的应用程序根模块及其模型模块 导入代码的副作用

在实践中,信号处理程序通常在信号中定义 与之相关的应用程序的子模块。信号接收器是 在应用程序配置的ready()方法中连接 班级。如果您使用的是receiver()decorator,请导入信号 子模块内部就绪()


我不知道粘贴是否错误,但在该代码中,您的模型名为Avaliacao,而不是Aval,模型和发件人参数必须匹配您所使用的抱歉Krs的可能重复项。

(谢谢你,沃伦德兰,很有效!为什么不在django doc中?@rayashi对此不确定)
@receiver(post_save, sender=Aval)
def new_rate(sender, instance, created, **kwargs):
    aval = instance

    print("Aval is saved.")
import signals