해결된 질문
작성
·
35
0
안녕하세요
7강 환경변수 분리와 첫 커밋 강의를 그대로 따라서 하고 runserver 했는데 CachBackend 관련 에러가 떠서 질문 올립니다.
에러 내용은 다음과 같습니다.
InvalidCacheBackendError(
django.core.cache.backends.base.InvalidCacheBackendError: Could not find backend 'django.core.cache.backends.memcached.MemcachedCache': Module "django.core.cache.backends.memcached" does not define a "MemcachedCache" attribute/class
.env, setting.py 파일에 코드는 강의에 있는 그대로 입니다.
gpt랑 여러군데 찾아보고 다른 캐시(pymemcahe, redis 등등)를 설치해서 캐시 백앤드를 수정하면 psql 관련 database 연결 에러가 뜨고 (port 가 안 맞다고 나왔습니다.) 이런 저런 시도를 해보다보니 저 혼자서는 도저히 해결할 수 없어서 도움을 구합니다 ㅠㅠ
<사용중 버전>
python 3.12
Django 5.1.2
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. Hyuntak Lee님께서 질문하신 CacheBackend 관련 에러에 대해 답변드리겠습니다.
해당 에러는 Django에서 지정한 캐시 백엔드 모듈을 찾지 못했을 때 발생하는 오류입니다. 특히, django.core.cache.backends.memcached.MemcachedCache
모듈은 Django 5.x 버전에서 지원되지 않을 수 있습니다. 이러한 경우 최신 버전의 Django 문서를 참조하여 올바른 캐시 백엔드를 설정해야 합니다.
해결 방법:
올바른 캐시 백엔드 지정:
Django 5.x부터는 Memcached를 사용하려면 pymemcache
또는 python-memcached
라는 라이브러리를 사용해야 할 수 있습니다. 설정에서 사용 권장되는 백엔드로 전환하세요.
# settings.py
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.PyMemcacheCache',
'LOCATION': '127.0.0.1:11211',
}
}
라이브러리 설치:
필요한 경우, 사용하는 Memcached 백엔드에 따라 필요한 라이브러리를 설치해야 합니다.
pip install pymemcache
PostgreSQL Database 연결 에러:
PostgreSQL 설정에서 포트가 맞지 않는다는 에러가 발생한다면, settings.py
에서 데이터베이스 설정을 확인하세요. 일반적으로 PostgreSQL의 기본 포트는 5432입니다. .env
파일에서 데이터베이스 관련 설정을 정확히 설정했는지 확인하시고, 데이터베이스 서버가 정상적으로 실행되고 있는지도 점검해 주세요.
관련하여 동일한 문제를 겪었던 다른 수강생들의 답변도 참고하시기 바랍니다. 아래는 관련 질문 URL입니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.