如何从Django中的信号中获得返回响应

时间:2015-01-03 18:05:33

标签: django

我正在使用post_init和post_save信号来监视单个表列,然后在CMS中更改监视列时更新其他表。这很好用,但CMS中的响应仍然是“1 blah已成功更改”。

相反,我需要显示信号内更新的实际项目数。我很茫然 - 在任何地方找不到这个,我甚至不确定在哪里看。关于正确技术的建议,或指向我错过的文档的指针?

1 个答案:

答案 0 :(得分:0)

很抱歉在这个问题完成多年后才回答这个问题,但是我搜索了很多解决方案(没有成功)来做到这一点,最后我发现了一种我想分享的方式。 不是更好的方式,但它的确有效:

在信号接收器功能和视图之间共享数据:

    # your signal receiver function
    @receiver(request_started)
    def request_started_receiver(sender, **kwargs):
        kwargs['environ']['CUSTOM_DATA_TO_VIEW'] = 'My Custom Data'

    # your view
    def index(request):
        custom_data = request.META.get('CUSTOM_DATA_TO_VIEW')