Как из одного шаблона jinja передать значения другому (Django, Python)

Есть два шаблона (home и card), через функцию views.py я передаю модель главному шаблону home. В home встроен цикл, который создает card. Как передать значения в card?

То есть я хочу передавать в home.html только модель, чтобы home.html создавало карточку и рисовала card.html. Проблема в том что я не могу из home.html задать параметры jinja для card.html

{% extends 'homepage.html' %}
{% block content %}
    <div class="container">
        <div class="row">
        {% for program in programs %}
            <div class="col">
                {% include 'card.html' %}
            </div>
        {% endfor %}
        </div>
    </div>
{% endblock %}

{% block content %}
<div class="card" style="width: 18rem;">
  <img src = '{{ image }}' class="card-img-top" alt='{{ image_text }}'>
  <div class="card-body">
    <h5 class="card-title">{{ card_title }}</h5>
    <p class="card-text">{{ card_text }}</p>
    <a href = '{{ card_btn_link }}' class="btn btn-primary">{{ card_btn_text }}</a>
  </div>
</div>
{% endblock %}


Ответы (1 шт):

Автор решения: Евгений

У вас в card используются переменные (например, {{ image }}), которые не объявлены в home.
Попробуйте перед включением шаблона объявлять эти переменные. Не знаю, как у вас реализована модель program, но объявление переменных будет выглядеть примерно так:

{% extends 'homepage.html' %}
{% block content %}
    <div class="container">
        <div class="row">
        {% for program in programs %}
            <div class="col">
                {% with image = program.image %}
                {% with image_text = program.image_text %}
                {% with card_btn_link = program.card_btn_link %}
                {% with card_btn_text = program.card_btn_text %}

                {% include 'card.html' %}

                {% endwith %}
                {% endwith %}
                {% endwith %}
                {% endwith %}
            </div>
        {% endfor %}
        </div>
    </div>
{% endblock %}

Подробнее о переменных в jinja2 можно почитать тут

→ Ссылка