junnex

템플릿 불러오기 에러

템플릿 불러오기 듣고 코딩을 했는데 에러가 발생하여 문의드립니다.

  1. http://127.0.0.1:8000/ --> 웹브라우저에서 호출
  2. 에러 TemplateDoesNotExist at / election/index.html Request Method: GET Request URL: http://127.0.0.1:8000/ Django Version: 1.9.1 Exception Type: TemplateDoesNotExist Exception Value:
    election/index.html Exception Location: C:\Python27\lib\site-packages\django\template\loader.py in get_template, line 43 Python Executable: C:\Python27\python.exe Python Version: 2.7.11 Python Path:
    ['C:\Django\mysite', 'C:\Windows\system32\python27.zip', 'C:\Python27\DLLs', 'C:\Python27\lib', 'C:\Python27\lib\plat-win', 'C:\Python27\lib\lib-tk', 'C:\Python27', 'C:\Python27\lib\site-packages'] Server time: Wed, 16 Mar 2016 17:35:36 +0900
3 개의 답변
정두식

에러 메시지 중에 TemplateDoesNotExist at / election/index.html 이 부분이 핵심인것 같은데요.
장고는 각 앱의 templates라는 폴더를 한군데에 다 모아 놓은다음에 거기서 index.html이라는 파일을 찾습니다. 프로젝트의 최상위 폴더를 mysite라고 하면 index.html 파일이 다음과 같은 폴더 안에 있어야 합니다.
mysite폴더 -> elections폴더 -> templates 폴더 -> elections 폴더 -> index.html

junnex

index.html 경로가 아래처럼 되어 있는데요
이럴때는 어떻게 하면 될까요?

C:\Django\mysite\election\template\election\index.html

  • 진
    강의노트에 폴더 경로가 ... /template/... 라고 되어 있네요 ― 진 2017.8.18 11:24
  • 정두식
    폴더명이 template이 아니라 templates이어야 합니다. ― 정두식 2017.8.18 11:24
junnex

답변 감사합니다.
C:\Django\mysite\election\templates\election\index.html으로 변경하였고, 다음과 같은 에러가 발생하였습니다.
산넘어 산이네요 ㅠㅠ

AttributeError at /
type object 'Candidate' has no attribute 'object'
Request Method: GET
Request URL: http://127.0.0.1:8000/
Django Version: 1.9.1
Exception Type: AttributeError
Exception Value:

type object 'Candidate' has no attribute 'object'
Exception Location: C:\Django\mysite\election\views.py in index, line 11
Python Executable: C:\Python27\python.exe
Python Version: 2.7.11
Python Path:

['C:\Django\mysite',
'C:\Windows\system32\python27.zip',
'C:\Python27\DLLs',
'C:\Python27\lib',
'C:\Python27\lib\plat-win',
'C:\Python27\lib\lib-tk',
'C:\Python27',
'C:\Python27\lib\site-packages']
Server time: Wed, 16 Mar 2016 18:13:17 +0900

  • 정두식
    강의노트 오타를 수정했습니다. 감사합니다. ― 정두식 2017.8.18 11:24
  • junnex
    강의노트에 보시면 object라고 되어 있네요(수정해야할듯하네요) 도움주셔서 정말 감사합니다. ― junnex 2017.8.18 11:24
  • 정두식
    object가 아니라 objects입니다. ― 정두식 2017.8.18 11:24
  • junnex
    11라인 코드: candidates = Candidate.object.all() ― junnex 2017.8.18 11:24
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.