Как объединить данные из разных функций в одной функции?
У меня есть приложение 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']. Что не должно быть, конечно.
Вопрос: как объединить два словаря в один метод и отобразить его в шаблоне.