Проверка существования значения в одном шаблоне, чтобы я мог создать уведомление в другом шаблоне
У меня есть загрузочная карточка, которая содержит список информации, а внутри этой информации есть булево значение. Если это значение истинно, я хотел бы показать на карточке какое-то уведомление. Вот как это выглядит
Итак, если в одной из этих ссылок есть значение true, я бы хотел, чтобы что-то уведомило пользователя, что все в порядке, а если значение false, дало бы ему знать, что что-то не так. Может быть, что-то вроде "палец вверх" и "палец вниз" от font awesome или что-то в этом роде (сейчас это не важно). Вот мой шаблон, который хранит эту информацию
<link href="{% static 'css/styles.css' %}" rel="stylesheet" />
<div class="card">
<div class="card-header text-dark">
<div class ="card-body">
<div class="table-responsive">
<table class="table table-bordered">
<thead class = "table-light">
<tr class="text-center">
<th>Location</th>
<th>RSU ID</th>
<th>Install confirmed</th>
<th>Winter mode</th>
<th>Date created</th>
<th>Created by</th>
<th>Date updated</th>
<th>Updated by</th>
</tr>
</thead>
<tbody>
<tr class="text-center">
<td>{{object.location}}</td>
<td>{{object.rsu_id}}</td>
{% if object.instln_confirmed %}
<td><i class="fas fa-check fa-2xl text-primary"></i></td>
{% else %}
<td><i class="fas fa-x fa-2xl text-danger"></i></td>
{% endif %}
{% if object.winter_mode %}
<td><i class="fas fa-check fa-2xl text-primary"></i></td>
{% else %}
<td><i class="fas fa-x fa-2xl text-danger"></i></td>
{% endif %}
<td>{{object.date_created}}</td>
<td>{{object.created_by}}</td>
<td>{{object.date_updated}}</td>
<td>{{object.updated_by}}</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
А вот шаблон, который показывает все различные карты
<div class="row gx-2 justify-content-center">
{% for object in object_list %}
<div class="col-sm-4 mb-3">
<div class="card" style="background-color: lightgrey;">
<div class="card-header text-primary text-center" style="background-color: lightgrey;">
<h3 class="text-primary"><strong>{{ object.name }}</strong></h3>
</div>
<div class="scroll">
<div class="card">
<div class="card-body">
<div class="row">
{% for info in object.prop_infos.all %}
<ul id="list">
<li>{{ info.date_created }}</li> |
<li><a href="{% url 'telemetry_updates:property_info_detail' info.id %}">{{info.detail|truncatechars:15 }}</a></li>
<hr>
</ul>
{% endfor %}
</div>
</div>
</div>
</div>
</div>
</div>
{% endfor %}
</div>
Модели
class Info(models.Model):
detail = models.TextField(max_length=3000)
instln_confirmed = models.BooleanField(null=True)
winter_mode = models.BooleanField(null=True)
rsu_id = models.CharField(max_length=255)
location = models.CharField(max_length=255)
created_by = models.ForeignKey(User, on_delete=models.SET_NULL, blank=True, null=True, related_name='Tc_section')
updated_by = models.ForeignKey(User, on_delete=models.SET_NULL, blank=True, null=True, related_name='Tup_section')
date_created = models.DateField('Date created', auto_now_add=True)
date_updated = models.DateField('Date updated', auto_now=True)
class Meta:
ordering=['-date_created']
class Property(models.Model):
name = models.CharField(max_length=20)
prop_infos = models.ManyToManyField(Info, through='PropertyInfo')
date_created = models.DateField('Date created', auto_now_add=True)
date_updated = models.DateField('Date updated', auto_now=True)
def __str__(self):
return self.name
def get_section_info(self):
return self.prop_infos.order_by('-date_created')
class PropertyInfo(models.Model):
info = models.ForeignKey(Info, on_delete=models.CASCADE)
prop = models.ForeignKey(Property, on_delete=models.CASCADE)
Виды
По сути, мне нужно просмотреть список реквизитов и, если в любом из них есть значение true или false, уведомить пользователя о карте.
Любая помощь будет принята с благодарностью.
Вы можете попробовать следующее во вложенном цикле:
{% for info in object.prop_infos.all %}
<ul id="list">
{% if info.winter_mode and info.instln_confirmed %}
<p>Everything is right</p>
{% else %}
<p> something went wrong.</p>
{% endif %}
<li>{{ info.date_created }}</li> |
<li><a href="{% url 'telemetry_updates:property_info_detail' info.id %}">{{info.detail|truncatechars:15 }}</a></li>
<hr>
</ul>
{% endfor %}