diff --git a/django_q/brokers/__init__.py b/django_q/brokers/__init__.py index 959d392..6609e5e 100644 --- a/django_q/brokers/__init__.py +++ b/django_q/brokers/__init__.py @@ -1,6 +1,9 @@ -from django_q.conf import Conf +import importlib + from django.core.cache import caches, InvalidCacheBackendError +from django_q.conf import Conf + class Broker(object): def __init__(self, list_key=Conf.PREFIX): @@ -171,6 +174,12 @@ def get_broker(list_key=Conf.PREFIX): elif Conf.MONGO: from brokers import mongo return mongo.Mongo(list_key=list_key) + elif Conf.BROKER: + module, func = Conf.BROKER.rsplit('.', 1) + m = importlib.import_module(module) + broker = getattr(m, func) + return broker(list_key=list) + # default to redis else: from brokers import redis_broker