gpt4 book ai didi

python - 无法让 post_save 在 Django 中工作

转载 作者:行者123 更新时间:2023-12-02 08:59:18 25 4
gpt4 key购买 nike

我阅读了关于信号django文档,并为我的模型Car编写了这段代码:

@receiver(request_finished)
def signal_callback(sender, **kwargs):
print 'Save Signal received'


@receiver(post_save, sender=Car)
def signal_handler(sender, **kwargs):
pass


request_finished(signal_callback, sender=car, dispatch_url="Unique save id")

但问题是,当我启动服务器并打开管理员时,我的终端中会收到大量“保存收到的信号”。我想知道的是我已将 signal_handler 限制为 post_save 。但是,即使没有保存任何内容,该消息也会多次出现。我不明白这一点。

注意:我会诚实的。我理解了其中的一部分,而不是文档中的全部内容。

最佳答案

有一个更简单的方法来绑定(bind) post_save signals

from django.db.models.signals import post_save
from myapp.models import Car

def do_something(sender, **kwargs):
print 'the object is now saved.'
car = kwargs['instance'] #now i have access to the object

post_save.connect(do_something, sender=Car)

信号request finished 每次发出 HTTP 请求时都会被调用,这是一个大问题。

关于python - 无法让 post_save 在 Django 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17257910/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com