我正在使用Django 1.3 beta 1并设置memcached。我对settings.py
Django's instructions CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.PyLibMCCache',
'LOCATION': '127.0.0.1:11211',
}
}
MIDDLEWARE_CLASSES = (
'django.middleware.cache.UpdateCacheMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.middleware.cache.FetchFromCacheMiddleware',
#'debug_toolbar.middleware.DebugToolbarMiddleware',
)
CACHE_MIDDLEWARE_SECONDS = 100000
CACHE_MIDDLEWARE_KEY_PREFIX = 'site_cache'
进行了更改:
def home(request):
print 'uncached'
# ...View's code...
这是我正在尝试的测试视图功能:
uncached
我总是在开发服务器的输出上打印{{1}},我总是会对数据库进行点击。为什么?我是否遗漏了某些内容或者完全误解了缓存?
Template fragment caching完美无缺。我只是错过了一些东西吗?请帮忙。
答案 0 :(得分:0)
您似乎已正确设置了所有内容。我在文档中可以看到的唯一可能的警告如下:
The cache middleware caches every page that doesn't have GET or POST parameters.
不幸的是,我假设你已经知道了这一点,它对你没有帮助。