したがって、基本的には、ミドルウェアがリクエストオブジェクトに何かを追加するシグナルリスナーを接続する必要があります。その後、この情報を応答に含めることができます。私は現在これを持っています:
class SomeMiddleware:
def process_request(self, request):
request.signals_received = ["I can see this"]
def listener(sender, **kwargs):
print "I can see this too"
request.signals_received.append("I can't see this")
some_signal.connect(listener)
def process_response(self, request, response):
response.write(request.signals_received)
return response
問題は、リスナーに追加したものが表示されないことです。どうしたの?
最終的に、リスナーは、レンダリングの直前に応答に追加するために時間内に実行される場合とされない場合がある並列タスクを登録する必要があります。
編集-スニペットの引用符