django sekizai 앱을 구현하려고합니다. 내가 추가하고있는 js 파일을 복제하고 있습니다.django sekizai {% addtoblock %} 태그가 제대로 작동하지 않습니다.
기본 템플릿 : 나는 년후 사업부 내에서 같은 스크립트를 추가하려고 할 때 이제 여기에 렌더링 템플릿 twice.But 렌더링했다
{% load sekizai_tags %}
<div id="a1" >
{% addtoblock "my_js" %}
<script type="text/javascript" src="{{ MEDIA_URL }}js/my_js.js"></script>
{% endaddtoblock %}
</div>
{% addtoblock "my_js" %}
<script type="text/javascript" src="{{ MEDIA_URL }}js/my_js.js"></script>
{% endaddtoblock %}
이 기지를 사용
{% load sekizai_tags %}
...
{% render_block "my_js" %}
템플릿 중복되지 않았습니다. 누군가가 이것에 관해 밝혀 줄 수 있다면 고맙겠습니다!
또한 템플릿 태그로 렌더링 된 템플릿에서 {% addtoblock %}을 (를) 사용하려고 시도하면 스크립트가 누락됩니다 (템플릿에 포함되지도 않고 템플릿에도 그대로 유지됩니다).
참고 : 템플릿 태그 render_block
및 addtoblock
은 django-sekizai 패키지의 템플릿 태그입니다.
잘 난 내 스크립트의 중복 뒤에 이유를 찾을 수 div 내부와 외부 스크립트의 들여 쓰기 {% addtoblock %} 태그는 분명히 공백을 제거하지 않습니다. 그래서 내 첫 번째 질문에 대한 해결책은 다음과 바보 같은 일입니다 {% 부하 sekizai_tags %}
맞춤 템플릿 태그의 템플릿에서도 스크립트가 사라졌습니다. [django-sekizai-docs] (https://github.com/ojii/django-sekizai/blob/master/docs/restrictions.rst)에 따라 SekizaiContext 또는 RequestContext와 Sekizai 컨텍스트 프로세서 중 하나를 사용해야하지만 이 cont [ 'SEKIZAI_CONTENT_HOLDER'] = context [ 'SEKIZAI_CONTENT_HOLDER']을 사용하여 템플릿의 컨텍스트 크기를 줄이려면 (cont = {}와 같은) 해결 방법을 찾았습니다. 이 해결 방법을 사용하면 RequestContext를 사용할 필요가 없으며 sekezai 컨텍스트 프로세서로 충분합니다. –