gpt4 book ai didi

python - Django Shell不尊重缓存配置

转载 作者:行者123 更新时间:2023-12-01 14:59:03 24 4
gpt4 key购买 nike

在我的settings.py中,我有:

CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'ws_cache_table',
'TIMEOUT': '3000000',
'OPTIONS': {
'MAX_ENTRIES': 10000000
}
}
}

但是如果我在 python manage.py shell中这样做:
from django.core.cache import cache
print type(cache)

我越来越:
django.core.cache.backends.locmem.LocMemCache

为什么!???
现在我无法清除缓存...

为了证明我的配置是corect,我可以执行以下操作:
from django.conf import settings
conf = settings.CACHES.get('default', None)

我得到:
{'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'ws_cache_table',
'OPTIONS': {'MAX_ENTRIES': 10000000},
'TIMEOUT': '3000000'}

看起来在定义CACHES之前已调用 get_cache方法...

最佳答案

首先,您应该记住local_settings.py会覆盖settings.py

然后,应注意后端运行的是什么缓存守护进程,因为存在不同的缓存守护进程,并且根据运行的内容,您需要各自指定的选项。

例如对于memcached,local_settings.py将显示为:

CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211'
'CACHE_TIME': '3600',
}
}

而对于locmem:
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'
'LOCATION': '127.0.0.1:11211'
'TIMEOUT': 3600'
}
}

关于python - Django Shell不尊重缓存配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19009956/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com