Как изменить {% block%} внутри тега шаблона? - PullRequest
0 голосов
/ 21 января 2019

У меня есть тег include_tag с именем content_blocks.И я хочу вставить несколько js в {% block%}, определенный в базовом шаблоне.

base.html:

<html>
<body>

{% content_blocks %} # content_blocks tag will be used here..
...
...
{% block js %}

{% endblock %}
</body>
</html>



# custom_tags.py

@register.inclusion_tag('tags/content_blocks.html')
def content_blocks():
    content_type = ... # some content type, obtained from somewhere else

    # todo: depending on 'content_type', insert some js in to {% block js %} 
    # how?

    .... other stuff

Это выполнимо?Я не могу поместить js в шаблон тега, потому что тогда он выводит его посередине страницы (для этого кода js требуется JQuery, и он загружается в конце страницы)

1 Ответ

0 голосов
/ 21 января 2019

Хотя ваш вопрос не совсем ясен, но я думаю, что вы хотите, то, что я делал в последнее время, мои настройки таковы:

  • У меня есть базовый шаблон со следующими block s: page_content для уникального html / содержимого отдельных дочерних шаблонов и page_js для их пользовательских сценариев
  • Мой jquery лежит в базовом шаблоне, а мой тег page_js стоит после всех других скриптов, включенных в нижней части страницы.
  • Таким образом, в дочерних шаблонах, например homepage.html, который расширяет базовый шаблон, я также включу тег {% block page_js %}, и он переопределит пустой в базовом шаблоне и поместит ваши сценарии туда и будет используя jquery для этого базового шаблона, так как он наследует его
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...