报错如下:
token = cache.get('token')
File "/usr/lib/python2.7/site-packages/Django-1.11.5-py2.7.egg/django/core/cache/__init__.py", line 99, in __getattr__
return getattr(caches[DEFAULT_CACHE_ALIAS], name)
File "/usr/lib/python2.7/site-packages/Django-1.11.5-py2.7.egg/django/core/cache/__init__.py", line 80, in __getitem__
cache = _create_cache(alias)
File "/usr/lib/python2.7/site-packages/Django-1.11.5-py2.7.egg/django/core/cache/__init__.py", line 54, in _create_cache
"Could not find backend '%s': %s" % (backend, e))
InvalidCacheBackendError: Could not find backend 'django_redis.cache.RedisCache': cannot import name get_cache
当我看到这个报错的时候,想到的问题就是包的问题,那么就是包的版本有问题了
django-redis==3.8.3
这是我使用的包版本,问题就出现在这个上,我换成
django-redis==4.10.0
再执行相同的代码,就过了,也不知道3.8.3的版本做了什么操作。

本文记录了一次在使用Django框架时遇到的缓存错误,详细描述了从错误发生到定位问题,再到最终解决的过程。错误核心在于django-redis包版本不兼容,通过将版本从3.8.3升级至4.10.0成功解决了问题。
4502

被折叠的 条评论
为什么被折叠?



