shaare.it

TypeError: Middleware missing get_response argument

7 Dec 2025

1 min read

TypeError: Middleware missing get_response argument

$ python manage.py runserver
...
TypeError: __init__() missing 1 required positional argument: 'get_response'

Why this happens

Your middleware uses old-style API without get_response in __init__.

Fix

Implement new-style middleware signature.

Wrong code

class M:
    def process_request(self, request):
        ...

Fixed code

class M:
    def __init__(self, get_response):
        self.get_response = get_response
    def __call__(self, request):
        return self.get_response(request)