File "/venv/lib/python3.7/site-packages/django_dramatiq/apps.py", line 107, in <module>
DjangoDramatiqConfig.initialize()
File "/venv/lib/python3.7/site-packages/django_dramatiq/apps.py", line 69, in initialize
middleware = [load_middleware(path) for path in broker_settings.get("MIDDLEWARE", [])]
File "/venv/lib/python3.7/site-packages/django_dramatiq/apps.py", line 69, in <listcomp>
middleware = [load_middleware(path) for path in broker_settings.get("MIDDLEWARE", [])]
File "/venv/lib/python3.7/site-packages/django_dramatiq/utils.py", line 17, in load_middleware
return load_class(path_or_obj)()
TypeError: __init__() missing 1 required positional argument: 'rate_limiter_backend'
GroupCallbacks initializer needs rate_limiter_backend as parameter:
class GroupCallbacks(Middleware):
def __init__(self, rate_limiter_backend):
self.rate_limiter_backend = rate_limiter_backend
But django_dramatiq is not passing extra params when loading the middleware:
apps.py:
middleware = [load_middleware(path) for path in broker_settings.get("MIDDLEWARE", [])]
utils.py:
def load_middleware(path_or_obj):
if isinstance(path_or_obj, str):
return import_string(path_or_obj)() <-- No param passed
return path_or_obj
How can I use GroupCallbacks in django_dramatiq? Do I need to modify how django_dramatiq initializes or is there another way?
Hi, I'm trying to use
GroupCallbacks
indjango_dramatiq
but it seems that callback is not really compatible:My settings:
Error:
GroupCallbacks initializer needs
rate_limiter_backend
as parameter:But django_dramatiq is not passing extra params when loading the middleware:
apps.py:
utils.py:
How can I use GroupCallbacks in django_dramatiq? Do I need to modify how django_dramatiq initializes or is there another way?
Thanks!