장고 : 고정 태그를 블록 태그에 넣는 것이 불가능합니까?
아래 코드는 오류를 만듭니다.이 문제를 어떻게 해결할 수 있습니까 ??
미리 감사드립니다 :)
{% block header %}
<link rel="stylesheet" href="{% static 'shop/style.css' %}" />
{% endblock %}
오류 출력 :
- TemplateSyntaxError : 잘못된 블록 태그 : '정적', 예상되는 'endblock'
아니요, 불가능하지 않습니다. {% load staticfiles%}
일부 .NET Framework에서 상속하는 대신 동일한 html 파일에 포함 해보십시오 base.html
.
1.) settings.py에서 TUPLE 추가 :
STATIFILES_DIR = (os.path.join (BASE_DIR, 'assets'),)
2.) urls.py에서 다음을 추가하십시오.
from django.contrib.staticfiles.urls import staticfiles.urlpatterns
urlpatterns += staticfile_urlpatterns()
3.) "link rel = 'stylesheet'.."를 넣는 html 파일에서 맨 위에 추가하십시오.
{% load static from staticfiles %}
and then use :
<link rel="stylesheet" href="{% static 'assets/css' %}"
내 솔루션은 정적 참조 가있는 include
다른 페이지 {% load static %}
및 스크립트입니다. {% block xxx %}
첫 번째 {% yyy %}
는 {% include %}
and {% endblock %}
(내가 관찰 한 유일한 경우)가 아닐 것으로 예상합니다 . 그래서 우리가 "{% static 'xxx.js' %}"
그것을 사용할 때 깨지고 불평합니다. 그러나 다른 페이지를 포함하면 Django는 침착하게됩니다.
예를 들어 .NET에 포함되지 않은 일부 정적 js 파일을 homepage
확장 base.html
하고 포함 하는 페이지 가 있습니다 base.html
.
base.html
{% block page %}
{% endblock %}
{% block script %}
{% endblock %}
homepage.html
:
{% extends 'base.html' %}
{% block page %}
...
{% endblock %}
{% block script %}
{% include 'home_js.html'%} <!-- don't use static links here because Django does not like it. -->
{% endblock %}
home_js.html
:
{% load static %}
<script src="{% static 'scripts/jquery.js' %}" ></script>
<script>
function ...
</script>
이제 스크립트가로드됩니다.
따라서 블록에서 및 {% %}
이외의 태그를 사용할 수 없습니다 .{% block xxx %}
{% endblock %}
Django 5.1을 사용하고 있습니다.
편집하다:
{% verbatim %}
그런 상황에서 나는 태그가 우리의 구세주임을 발견했습니다 .
그냥 추가 {% load static %}
템플릿의 상단에 후{% extends 'app/base.html' %}
.
예. 장고는 그것을 허용하지 않을 것입니다.
You can just use the appropriate path like:
<link rel="stylesheet" href="/static/shop/style.css" />
But be aware: If you change your app's STATIC_URL
, the href
above must also be updated accordingly.
From Configuring static files:
In your templates, either hardcode the url like /static/my_app/example.jpg or, preferably, use the static template tag...
ReferenceURL : https://stackoverflow.com/questions/22650371/django-is-it-impossible-to-static-tag-into-block-tag
'Programing' 카테고리의 다른 글
Google 클라우드 메시징에 사용할 API 키 가져 오기 (0) | 2020.12.29 |
---|---|
데이터 디렉토리 gitlab을 변경하여 다른 곳에 저장소를 저장하십시오. (0) | 2020.12.29 |
사용자 지정 헤더와 함께 Alamofire를 사용하는 방법 (0) | 2020.12.29 |
emacs를 다시 시작하지 않고 편집 한 후 .spacemacs 파일을 어떻게 다시로드 할 수 있습니까? (0) | 2020.12.29 |
Kotlin에서 @Autowired와 같은 스프링 주석을 사용하는 방법은 무엇입니까? (0) | 2020.12.29 |