2016-03-19 5 views
8

मैं अपने Django वेबसाइट पर लौटने वाले सभी प्रतिक्रियाओं में कुछ शीर्षलेख जोड़ना चाहता हूं। ऐसा करने का कोई तरीका है (render फ़ंक्शन में एक रैपर जोड़ने के अलावा)?सभी Django प्रतिक्रियाओं में HTTP शीर्षलेख कैसे जोड़ें

उत्तर

21

हां, आपको middlewares पर एक नज़र रखना चाहिए।

Django> = 1,10

yourapp/middleware.py

class MyMiddleware: 

    def __init__(self, get_response): 
     self.get_response = get_response 

    def __call__(self, request): 
     response = self.get_response(request) 
     response['X-My-Header'] = "my value" 
     return response 

yourproject/settings.py

MIDDLEWARE = [ 
    ..., 
    'yourapp.middleware.MyMiddleware', 
    ..., 
] 

Django < = 1,9

yourapp/middleware.py

class MyMiddleware: 
    def process_response(self, request, response): 
     response['X-My-Header'] = "my value" 
     return response 

yourproject/settings.py

MIDDLEWARE_CLASSES = [ 
    ..., 
    'yourapp.middleware.MyMiddleware', 
    ..., 
] 
संबंधित मुद्दे