mirror of
https://github.com/django/django.git
synced 2025-11-07 07:15:35 +00:00
Fixed #18220 -- Removed the CACHE_BACKEND setting, as per official deprecation timeline.
Thanks Ramiro Morales for the review.
This commit is contained in:
36
django/core/cache/__init__.py
vendored
36
django/core/cache/__init__.py
vendored
@@ -64,42 +64,6 @@ def parse_backend_uri(backend_uri):
|
||||
|
||||
return scheme, host, params
|
||||
|
||||
if not settings.CACHES:
|
||||
legacy_backend = getattr(settings, 'CACHE_BACKEND', None)
|
||||
if legacy_backend:
|
||||
import warnings
|
||||
warnings.warn(
|
||||
"settings.CACHE_* is deprecated; use settings.CACHES instead.",
|
||||
DeprecationWarning
|
||||
)
|
||||
else:
|
||||
# The default cache setting is put here so that we
|
||||
# can differentiate between a user who has provided
|
||||
# an explicit CACHE_BACKEND of locmem://, and the
|
||||
# default value. When the deprecation cycle has completed,
|
||||
# the default can be restored to global_settings.py
|
||||
settings.CACHE_BACKEND = 'locmem://'
|
||||
|
||||
# Mapping for new-style cache backend api
|
||||
backend_classes = {
|
||||
'memcached': 'memcached.CacheClass',
|
||||
'locmem': 'locmem.LocMemCache',
|
||||
'file': 'filebased.FileBasedCache',
|
||||
'db': 'db.DatabaseCache',
|
||||
'dummy': 'dummy.DummyCache',
|
||||
}
|
||||
engine, host, params = parse_backend_uri(settings.CACHE_BACKEND)
|
||||
if engine in backend_classes:
|
||||
engine = 'django.core.cache.backends.%s' % backend_classes[engine]
|
||||
else:
|
||||
engine = '%s.CacheClass' % engine
|
||||
defaults = {
|
||||
'BACKEND': engine,
|
||||
'LOCATION': host,
|
||||
}
|
||||
defaults.update(params)
|
||||
settings.CACHES[DEFAULT_CACHE_ALIAS] = defaults
|
||||
|
||||
if DEFAULT_CACHE_ALIAS not in settings.CACHES:
|
||||
raise ImproperlyConfigured("You must define a '%s' cache" % DEFAULT_CACHE_ALIAS)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user