Выполнение кода javascript, присутствующего в дочернем шаблоне, после отрисовки основного шаблона

У меня есть базовый шаблон, который служит общей структурой для дочерних шаблонов. Внутри этого базового шаблона библиотека jQuery включена непосредственно перед закрывающим тегом body.

базовый шаблон

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8">
    .
    .
</head>
<body>
{% block content %}

{% endblock %}
<script src="path/to/jQuery/library"></script>
</body>
</html>

Теперь мой дочерний шаблон имеет следующий код

дочерний шаблон

{% extends 'base_template.html' %}
{% block content %}
<h1>How you doing?</h1>

<script type="text/javascript">
   // this code is specific to this template, may not be used in another template
  // but can't use jQuery here since the library hasn't loaded yet
</script>
{% endblock %}

Итак, как мне выполнить код javascript внутри child template только после того, как базовый шаблон закончит загрузку библиотеки jQuery?

Вам необходимо использовать 2 блока:

base
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8">
    .
    .
</head>
<body>
{% block content %}

{% endblock %}
<script src="path/to/jQuery/library"></script>
{% block scripts %}

{% endblock %}
</body>
</html>
child_template
{% extends 'base_template.html' %}
{% block content %}
<h1>How you doing?</h1>
{% endblock %}

{% block scripts %}
<script type="text/javascript">
    // this code can "use" jquery
</script>
{% endblock %}
Вернуться на верх