해결된 질문
작성
·
242
0
안녕하세요 강사님 해당 강의의 21:57경에 #local apps 부분을 추가해주시고 따로 앱 이름은 넣지 않으시고 넘어가셨습니다.
그리고 다음 강의에서 urls.py에 templateview를 상속 받아서 root.html을 참조하는 부분이 있었는데 저는 정상적으로 root.html을 생성 했음에도
TemplateDoesNotExist at /
root.html 에러가 발생했습니다.
저는 폴더를 못 찾는 문제라고 판단해서(at / 뒤에가 비어 있어서) INSTALLED_APPS의 #local apps 부분에 '프로젝트명'을 입력해줬더니 해결은 됐습니다. (뭔가 기술적으로 확실히 알고 해결한 게 아니라서 좀 꺼림찍해서 질문을 남겼습니다.)
강사님은 local_apps 부분을 그냥 넘어가셔도 다음 강의에서 templates 폴더 내의 root.html를 참조하는데 문제가 없으셨는데 저는 왜 이런 문제가 발생했는지 궁금하고, 또 local apps는 말그대로 app 이름이 들어가야 할 것 같은데 '프로젝트 이름-newaskcompany'이 들어가도 될런지 궁금합니다.
답변 2
1
안녕하세요.
INSTALLED_APPS 리스트에 주석으로 local apps 라고 쓴 것은, 장고 프로젝트 내에서 생성한 장고 앱들을 local apps라고 지칭한 것이구요. 이 앱들을 장고 프로젝트에 등록할 때 INSTALLED_APPS 끝에 추가하는 것을 의도한 것입니다. 아직 생성한 장고앱이 없으니, local apps 를 비워둔 것이구요.
INSTALLED_APPS끝에 newaskcompany 라고 추가하는 것은 이는 장고앱이 아니기에 잘못된 지정입니다.
아마도 본 영상의 8:50 지점에 설명드리는 TEMPLATES내 DIRS 설정을 누락하신 듯 하구요. 여기에 newaskcompany/templates 경로를 추가해주셔야 합니다.
템플릿은 장고앱 내 templates 에 있어도 장고가 찾을 수 있고, 장고앱이 아닌 다른 경로에 템플릿 파일이 있다면 TEMPLATES 내 DIRS 설정에 그 templates 경로를 추가해주시면, 장고가 그 경로에 있는 템플릿 파일을 찾을 수 있게 됩니다.
템플릿 로더(loader)에 대한 자세한 설명을 한 에피소드도 있으니 참고해보세요.
화이팅입니다. :-)
모든 내용을 한 번에 다 이해하고 캐치할 수는 당연히 없습니다.
지금처럼 질문을 통해 하나하나씩 채워나가시면 됩니다.
저와 함께 하나씩 하나씩 차근차근 알아가도록 해요. :-)
0
저기 # Local Apps 밑에 'newaskcompany'를 지우면 TemplateNotExist at /
root.html
이 발생합니다. (urls.py에서 template_name='') 부분을 변경할 시 root.html 이름도 변경되는 걸 보면 urls.py 요청 자체는 들어가는 것 같습니다.
제가 놓친 부분이 있군요... 충분히 혼자 해결할 수 있는 부분이었는데 죄송합니다