Я хотел бы вызвать функцию в моем представлении или любой другой модуль и попросить ее обновить тело ответа.
Вначале я думал о реализации промежуточного программного обеспечения process_response
для обновления тела ответа и настройки обратного вызова, который принимает сигналы, отправленные в моих вызовах функций, но когда я пытаюсь, приемник никогда не срабатывает (я тестировал сингал / приемник вне класса / модуля промежуточного программного обеспечения, и он работает нормально.
Пример:
# in module that defines the signal
module.signal.send(msg='this is a message to append on the response body')
# in view or model
signal.connect(callback)
# in middleware.py
def callback(self, sender, *kwargs):
self.body_text = kwargs.pop('msg')
def process_response(self, request, response):
response.body = response.body + self.body_text
return response