해결되지 않은 템플릿 참조오류가 뜹니다
Common

wsgi & asgi


layout.html

root.html

웹 페이지
파이참 django 프로젝트내에서 왜인지 모르게 static파일이랑 templates 경로를 인식하지 못하는거 같습니다.
그런데 runserver로해서 구동했을경우에는 정상적으로 적용이돼서 나오네요.
settings

다만 settings 파일을 원래경로에 다시 만들고 BASE_DIR = dirname(dirname(abspath(__file__)))으로 dirname을 한단계 내리게되면 참조 오류가 해결이됩니다. 왜 이러는걸까요?
답변 1
0
안녕하세요.
말씀하신 대로 마지막에 답이 있네요.
BASE_DIR 설정에 따라 찾지못하는 템플릿/static 파일이군요. 그 파일들은 BASE_DIR 설정을 통해 템플릿 경로, static 경로를 계산하는 파일들이구요.
settings 파일에 보시면, TEMPLATES내 DIRS 설정을 통해 지정하는 경로에 root.html 파일이 있을 것이구요. STATICFILES_DIRS를 통해 지정하는 경로에 오류의 static 파일이 있었을 것입니다. 두 설정 모두 BASE_DIR 값을 사용하고 있죠.
BASE_DIR 값은 manage.py 파일이 있는 디렉토리의 경로를 지정해야만 합니다. 일반적으로 settings 파일로부터 부모/부모를 찾아가며 경로를 지정하는 데, settings 파일의 깊이가 한 단계 깊어졌다면 BASE_DIR 계산시에도 dirname 을 한 번 더 써주어 부모를 한 단계 위에서 찾아가도록 해야만 합니다.
차근차근 정리해보시고 또 질문 남겨주세요.
화이팅입니다. :-)
0
넵 그래서 첫번째 Common 이미지에서처럼 dirname을 한번 더 써주었는데도 저렇게 참조오류가 뜨더라고요


settings.py파일을 settings폴더에 common.py이름으로 옮겨서 BASE_DIR값에 dirname을 한번 더 써주었는데도 참조가 안되네요... ㅜ
0
BASE_DIR 값과 STATICFILES_DIRS 설정, TEMPLATES의 DIRS 설정등이 각 템플릿/static 파일이 저장된 경로로 올바르게 지정하셨는 지 확인을 먼저 하셔야 합니다.
장고 쉘을 구동하셔서 python mange.py shell 명령, 장고 settings를 임포트 하신 후에, from django.conf import settings
settings.BASE_DIR 등의 값을 확인해보세요.
참조가 될 때가 있고, 안 될 때가 있으니, 될 때에는 어떤 설정값을 가지고 안 될 때는 어떤 설정값을 가지는 지 확인을 하시면, 에러를 올바르게 이해하실 수 있습니다.
어쩌다보니 에러가 사라졌다. 가 아니라, 내가 이런 이런 값으로 설정을 올바르게 했음을 확신할 수 있어야, 실력이 향상이 됩니다.
설정이 모두 올바른 데, 희소한 확률도 툴에서 제대로 인지를 못할 때도 있습니다. 그럴 때는 대개 개발툴을 재시작시켜주거나, 개발툴의 캐시 초기화 명령을 수행해보기도 합니다. 그런데 이 경우는 그 케이스는 아닌 듯 하네요.
차근차근 코드를 확인하시며 정리하시는 것이, 에러를 해결하는 가장 빠른 방법입니다.
정리해보시고, 각 파일들의 경로와 각 설정들이 어떻게 되는 지 알려주시겠어요?
0
BASE_DIR 뿐만 아니라, STATICFILES_DIRS 및 TEMPLATES 설정값도 확인해보시고,
STATICFILES_DIRS와 TEMPLATES에 지정한 폴더의 실제 경로도 확인해보시고,
윈도우탐색기를 통해 STATICFILES_DIRS와 TEMPLATES에 지정한 폴더 내에 저장한 root.html 및 static 파일의 실제경로도 확인해보시겠어요?
0
웹브라우저를 통해 장고 웹서버에 접속했을 때 static/template 파일은 로딩이 되고 있나요?
장고 웹서버에서는 처리가 되는 데, 파이참에서 밑줄이 뜨는 경고가 뜨신 다는 것인가요?
장고 웹서버에서의 처리와 파이참에서의 처리는 서로 다릅니다. 파이참은 장고와는 별개로 파이참 나름의 추론을 할 뿐인거죠.
그러니 위에서 알려드린 대로 각 설정을 하시면 장고에서의 처리는 잘 되셔야 합니다.
그리고 각 장고앱이 아닌 별도 경로에 생성하신 static 파일과 templates 경로에 대해 파이참에서 자동완성이 잘 안된다면, 수동으로 찾아올 경로를 지정해주실 수 있습니다.
askcompany/templates 폴더의 경우 파이참에서 해당 폴더를 우클릭 후에 "Mark Directory as" 메뉴에서 "Template Folder"를 지정해주시고, askcompany/static 폴더의 경우 "Sources Root" 로 지정하신 후에, 파이참을 껐다가 재시작해주시면, 파이참에서 수동으로 지정하신 경로를 참조하시게 됩니다.
0




네 말씀하신대로 장고 웹서버에서 처리가 되는데 파이참에서 밑줄 경고가 뜹니다!
templates는 Template Folder로, static폴더는 Sources Root로 지정해주었는데 urls의 root.html 참조오류는 해결되었지만 html에서 static으로 부트스트랩을 불러올때에는 밑줄로 참조오류가 떠버리네요 ㅜㅜ
0

bootstrap5 라이브러리 또한 안불러와집니다 그런데 웹사이트에서는 적용은되네요 저만 그런건지 파이참문제인건지 settings 분리할때에만 참조오류가 뜹니다 프로젝트 첨부터 만들어봐도 똑같네요
1
아. 그런 부분이라면
파이참의 프로젝트 설정에서 Django 설정에서 django support 활성화 항목이 있습니다.
여기에 settings 경로 지정항목이 있으니, 여기를 확인해보시고 맞게 변경해보시겠어요?
0
바로해결되었네요 정말 감사합니다!! 강의도 필요한 내용들 자세하게 설명해주시고 질문글에 답변도 계속달아주셔서 모르는 문제도 해결할 수 있었네요 강의 구매를 참 잘한거같습니다. 오류해결 답변해주시느라 고생하셨어요 언제나 좋은하루되세요!
안녕하세요.
0
62
1
[OneToOne Field Demo] get_user_model() 메서드를 활용해야 하는 이유?
0
285
1
useEffect 훅에서 else 유무에 따른 결과
0
222
1
useAxios 훅의 dependency array 설정
0
254
1
useEffect에서 변수 업데이트 관련 질문
0
389
1
rest_framework.generics.CreateAPIView의 model 속성 유무
0
276
1
bootstrap4
0
480
4
리뉴얼 강의가 오픈이 되면 기존 강의는 더이상 못보는걸까요
1
374
1
admin form에서 앞선 필드 선택 후 다른 필드 select widget 구성하는 방법
0
578
3
useState는 필수일까요?
0
272
1
python manage.py makemigrations instagram 시 created_at default 오류가 발생합니다.
0
610
4
Django allauth를 사용한 소셜 로그인 시 에러
0
660
1
프로젝트명 변경 뒤, 디버그툴바+디버그모드 사용 시 에러
0
569
2
useLocalStorage() 함수 사용여부
0
237
1
django에 LOGIN_URL = '/accounts/login/'의 의미?
0
453
1
리듀서의 의미 재확인
0
439
1
simple-jwt Refresh Token 사용 노하우
0
906
2
docker compose 를 통한 배포 관련 오류 문의
0
686
1
파이썬 속도 장고 관련 궁금한게 있습니다.
0
372
1
is_like_user
0
238
1
related_name 오류
0
278
1
re_path 오류
0
265
1
re_path url
0
255
1
No post matches the given query
0
671
2











네 말씀하신대로 경로들을 전부 불러와봤습니다 아직도 참조를 못하네요 ㅜ