Upgrading Caching Django 1.2 to 1.3
July 30, 2011
I was upgrading a site from Django 1.2 to 1.3, and I got the following error when I requested my homepage:
Traceback (most recent call last): File "/home/drumcoder/web/drumcoder/django/core/servers/basehttp.py", line 283, in run self.result = application(self.environ, self.start_response) File "/home/drumcoder/web/drumcoder/django/contrib/staticfiles/handlers.py", line 68, in __call__ return self.application(environ, start_response) File "/home/drumcoder/web/drumcoder/django/core/handlers/wsgi.py", line 250, in __call__ self.load_middleware() File "/home/drumcoder/web/drumcoder/django/core/handlers/base.py", line 53, in load_middleware mw_instance = mw_class() File "/home/drumcoder/web/drumcoder/django/middleware/cache.py", line 70, in __init__ self.cache = get_cache(self.cache_alias) File "/home/drumcoder/web/drumcoder/django/core/cache/__init__.py", line 173, in get_cache backend, location, params = parse_backend_conf(backend, **kwargs) File "/home/drumcoder/web/drumcoder/django/core/cache/__init__.py", line 131, in parse_backend_conf mod_path, cls_name = backend.rsplit('.', 1) ValueError: need more than 1 value to unpack
The cause was because I had the following settings in my settings.py:
CACHE_MIDDLEWARE_ALIAS = 'drumcoder' CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.dummy.DummyCache', } }
In Django 1.3, the CACHE_MIDDLEWARE_ALIAS
setting tells the cache software to look for a CACHES
backend called drumcoder
. I only have one called default
. I removed the CACHE_MIDDLEWARE_ALIAS
line and all was well.