작성
·
548
0
위 코드에서 {% ~ %} 템플릿태그로
load static
이라는게
단순히 문자그대로 static을 로드 한다 (임포트구문 처럼)
라고는 알겠는데
static
이라는게 어떤 걸(경로?) 뜻하는지 궁금합니다.
settings.py 의 STATIC_URL, STATICFILES_DIRS, STATIC_ROOT 전부를 뜻하는건지? 아니면 STATICFILES_DIRS만 뜻하는건지? 궁금합니다.
그럼 각 장고앱 하위 static 경로들은 load를 안해줘도 되는건지 궁금하네요..
답변 2
0
아 그렇군요. 전혀 다르걸로 생각했었네요. 감사합니다.
우선 다른것들은 이해가 가는데 답변주신내용 중 제가 이해를 못하는 부분 때문에 추가질문 2개가 있습니다.
장고 static loader
라는 용어/개념이앞서 배운
파인더
즉를 말씀하신건가요?
"
...템플릿 태그 static은 템플릿 내에서
<img src="{% static 'hello.jpg' %}" /> 와 같은 코드로
상대경로인 경로를 URL 절대경로로 변환하여 사용
하실 수 있습니다...."
강조한 부분
들이 전혀 이해가 가질 않습니다..ㅠㅠ
0
안녕하세요.
장고 템플릿 파일에서 {% load 확장자제외한_파일명 %} 패턴을 통해, 특정 파일의 템플릿 태그와 필터들을 load하여 해당 템플릿 파일에서 사용할 수 있게 됩니다. static 의 경우, django/templatetags/static.py 파일입니다.
관련 공식문서 : https://docs.djangoproject.com/en/4.2/ref/templates/builtins/#load
템플릿 태그 static 를 사용하기 위해, {% load static %} 을 수행한 것이구요.
템플릿 태그 static은 템플릿 내에서 <img src="{% static 'hello.jpg' %}" /> 와 같은 코드로
상대경로인 경로를 URL 절대경로로 변환하여 사용하실 수 있습니다.
settings 내의 설정과 템플릿태그 static는 서로 별개입니다.
{% load 대상은 templatetags/ 내의 파일들이며,
장고 static loader가 로딩하는 대상들을 템플릿 내에서 지정해주는 것은 아닙니다. settings 내에 필요한 설정들을 해주면, static loader가 동작할 때 settings 설정들을 읽어들여 동작하는 것일 뿐입니다.
화이팅입니다. :-)
이진석 드림
제가 용어를 헷갈렸네요. 말씀하신 대로 템플릿에서는 loader가 있고, static에서는 finder 입니다.
static 템플릿을 다양한 인자로 수행해보시고 그 결과값도 예상해보시고 비교해보세요. 그리고 공식문서 글도 찾아서 읽어보시구요.
잘 이해가 안 되시는 부분은 일단 keep해두시고, 이후 반복 학습에서 다시 체크해보시는 것도 한 방법입니다.
static 동작에 대해서는 아래 글과 영상에서도 제가 드릴 수 있는 최대한의 설명을 드리고 있습니다.
구체적인 질문으로 주시면, 저도 그에 맞춰 답변을 드리겠습니다.
화이팅입니다. :-)