반응형
django 1.5-정적 태그 내에서 변수를 사용하는 방법
현재 내 프로젝트의 모든 정적 파일 참조를 django 1.5가 도입 한 새로운 {% static %} 태그로 마이그레이션하고 있지만 문제가 있습니다. 어떤 곳에서는 변수를 사용하여 콘텐츠를 가져옵니다. 새 태그로는 할 수 없습니다.이 문제를 해결할 방법이 있습니까?
현재 코드 :
<img src="{{ STATIC_URL }}/assets/flags/{{ request.LANGUAGE_CODE }}.gif" alt="{% trans 'Language' %}" title="{% trans 'Language' %}" />
그것이 무엇이어야 하는가 (이것은 작동하지 않는다) :
<img src="{% static 'assets/flags/{{ request.LANGUAGE_CODE }}.gif' %}" alt="{% trans 'Language' %}" title="{% trans 'Language' %}" />
add
템플릿 필터를 사용하여 문자열을 연결할 수 있어야합니다 .
{% with 'assets/flags/'|add:request.LANGUAGE_CODE|add:'.gif' as image_static %}
{% static image_static %}
{% endwith %}
수행하려는 작업 static
은 문자열 또는 변수 만 사용하기 때문에 템플릿 태그에서 작동하지 않습니다 .
{% static "myapp/css/base.css" %}
{% static variable_with_path %}
{% static "myapp/css/base.css" as admin_base_css %}
{% static variable_with_path as varname %}
보다 깨끗한 방법은 html 시작 부분에서 {% static %}를 변수로 설정하여 원하는 방식으로 사용할 수 있도록하는 것입니다.
{% load static %}
{% static "" as baseUrl %}
<img src="{{ baseUrl }}/img/{{p.id}}"></img>
정적 경로에 빈 문자열을 사용하고 다음과 같이 자체 섹션에서 내 변수를 사용하여이 작업을 수행했습니다.
<a href= "{% static "" %}{{obj.a}}/{{obj.b}}/{{obj.c}}.gz" >Name</a>
그만한 가치는 이것이 가장 쉬운 방법이라고 생각합니다.
<img src="{% static 'assets/flags/'|add:request.LANGUAGE_CODE|add:'.gif' %}" ... >
이것은 오래된 질문 이며이 방법이 당시에 수행 될 수 있는지 확실하지 않지만 이제 Django 2.0에서는 이것이 잘 작동하는 것 같습니다.
@rounin, 최소한 사용할 수 있습니다.
{% get_static_prefix %}
{% load static %} 때로드됩니다. {% static ''%}보다 자연 스럽습니다. :)
참고 URL : https://stackoverflow.com/questions/16655851/django-1-5-how-to-use-variables-inside-static-tag
반응형
'code' 카테고리의 다른 글
작성자 이름을 마크 업하려면 어떤 HTML5 태그를 사용해야합니까? (0) | 2020.09.09 |
---|---|
모든 글리프의 너비가 동일한 지 어떻게 확인합니까? (0) | 2020.09.09 |
$ scope와 $ rootScope의 차이점 (0) | 2020.09.09 |
Python으로 UTF8 CSV 파일 읽기 (0) | 2020.09.09 |
jQuery : 선택한 파일 이름 가져 오기 (0) | 2020.09.09 |