Как объединить данные из разных функций в одной функции?

У меня есть приложение django. И я пытаюсь объединить два словаря в одной функции? Так, чтобы оба словаря отображались в одном шаблоне.

У меня есть файл views.py:

def data_compare():
    fruits = {
        "appel": 3962.00,
        "waspeen": 3304.07,
        "ananas": 24,
    }
    condition1 = ["ananas"]

    context = {"fruits": fruits, "condition": condition1}

    return context


def data_compare2():

    fruits2 = {
        "appel": 3962.00,
        "waspeen": 3304.07,
        "ananas": 30,
    }
    condition2 = ["ananas"]

    context = {"fruits2": fruits2, "condition": condition2}

    return context


def data_combined(request):
    data1 = data_compare()
    data2 = data_compare2()

    return render(request, "main/data_compare.html", context={'data1': data1, 'data2':data2})

А шаблон выглядит так:

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

    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>

    <body>

        <div class="container center">
            {% for key, value in data1.items %}
                <span {% if key in condition %} style="color: red;" {% endif %}>{{ key }}: {{value}}</span><br>
            {% endfor %}
        </div>

        <div class="container center">
            {% for key, value in data2.items %}
                <span {% if key in condition %} style="color: red;" {% endif %}>{{ key }}: {{value}}</span><br>
            {% endfor %}
        </div>

    </body>

</html>

Но тогда выход:

 fruits: {'appel': 3962.0, 'waspeen': 3304.07, 'ananas': 24}
condition: ['ananas']
fruits2: {'appel': 3962.0, 'waspeen': 3304.07, 'ananas': 30}
condition: ['ananas']

Но тогда текст не окрашивается в красный цвет. И также я получаю литерное условие текста: ['ananas']. Что не должно быть, конечно.

Вопрос: как объединить два словаря в один метод и отобразить его в шаблоне.

Вернуться на верх