본문 바로가기
Python/오류노트

[Django] TemplateDoesNotExist 해결방법

by 비븽 2022. 10. 13.

나를 괴롭혔던 TemplateDoesNotExist ... 처리해봅시다👊

 

1 templates 폴더 명 확인하기

   기본 중의 기본. 철자 정확히 확인하세요. 특히 s 잘 붙어있는지 확인. template도 안되고 templete도 안됩니다!! 이런걸로 에러가 뜬다니 어처구니없죠.

 

2 settings.py 확인하기

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    
    'app1',
    'app2',
]

앱 폴더 경로 설정 확인

   settings.py 파일 내 INSTALLED_APPS에 새로 생성한 app을 추가했는지 확인. 추가하지 않으면 app을 인식하지 않습니다. 

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [BASE_DIR / 'templates'],
        'APP_DIRS': True,
        'OPTIONS': {

템플릿 파일 경로 설정 확인

   settings.py 파일 내 TEMPLATES에서 DIRS에 [BASE_DIR / 'templates'] 추가. APP_DIRS가 True 인지 확인하기. BASE_DIR의 의미를 잘몰랐는데 이 포스팅이 도움이 되었습니다. 👉[Django] 프로젝트 구조 설정 (앱, 템플릿, Static 파일 등) (tistory.com)

 

3 경로 지정이 정확한지 확인하기

from django.shortcuts import render

def home(request):
    return render(request, "board/home.html")

   저 같은 경우엔 view.py 에서 render에 적은 경로를 틀려서 오류가 났습니다. 생각없이 " home.html "라고 적었더니 오류가 나더라구요. app경로까지 꼭 잘 써주도록 합니다. " board/home.html"

 

4 폴더 위치 확인하기

   혹여나 templates 폴더가 엉뚱한 곳에 있지 않나요? 제가 그랬습니다... 황당. 이건 경로 지정이 정확하게 됬는지 확인하는 중에 알 수 있는건데  정신이 산만한건지 뭔지 깨닫질 못하고 1시간동안 삽질한 뼈아픈 기억이 있어서 굳이굳이 적어둡니다..ㅡ_ㅡ