2011-12-30 52 views
1

因此,當我嘗試運行runserver或syncdb時,遇到此CACHE錯誤。Django CACHE_BACKEND錯誤

這裏是回溯:https://gist.github.com/1538051

我試圖插入settings.py文件這樣的:

CACHE_BACKEND = { 
    'default': { 
     'BACKEND': 'django.core.cache.backends.dummy.DummyCache', 
    } 
} 

但是,這給了另一個錯誤,是沒有意義的我。

if backend_uri.find(':') == -1: 
AttributeError: 'dict' object has no attribute 'find' 

有人可以幫助我找出問題所在,以及如何解決它。

注:如果您使用的Django

CACHE_BACKEND = 'dummy://' 

1.3+:我開發服務器

回答

9

的工作。如果你使用Django 1.2或更低,CACHE_BACKEND(docs)接受字符串,CACHE_BACKEND,取而代之的緩存被棄用(docs):

CACHES = { 
    'default': { 
     'BACKEND': 'django.core.cache.backends.dummy.DummyCache', 
    } 
} 

我不知道爲什麼你的安裝不創建適當的d默認情況下 - 這可能是你的安裝有其他問題,但是如果不知道更多關於settings.py的信息,我就沒有足夠的信息。

1

首先,你用的是什麼版本的django?字典式的後端配置是django 1.3的新增功能,並且您的回溯表明您處於類似1.2.4的狀態。

如果是這樣的話,您將需要使用較舊的uri風格緩存設置。類似於

CACHE_BACKEND = 'dummy://' 

將與您試圖設置的問題相匹配。

有關Django 1.2的完整緩存文檔可在此處獲得:http://docs.djangoproject.com/en/1.2/topics/cache/