Django. Просмотр всех изменений конкретной записи в модели
Стоит следующая задача: На сайте по нажатию на кнопку, расположенную около записи посмотреть список произошедших с ней изменений. У меня есть 2 модели: Facilities в которой прописаны все предприятия, и Facilities_updates, куда пишутся все изменения, произведенные с записями этой модели.
Таблицы имеют следующую структуру:
Facilities (Postgresql):
Facilities (На сайте):
Facilities_updates (Postgresql):
Facilities_updates (На сайте):
Old_id в таблице Facilities_updates соответствует id измененной записи из таблицы Facilities. По нажатию на увеличительное стекло справа у меня открывается всплывающее окно, в котором нужно отразить все изменения, произошедшие с конкретной записью, пытаюсь сделать связку по id и Old_id, но ничего не получается, при нажатии на любой записи выводится таблица Facility_updates целиком. Как сделать так, чтобы для конкретной записи, для которой была нажата кнопка выводились только те записи, id которых совпадают в обеих таблицах? Не понимаю как сделать проверку на равенство id.
views.py
def facility_table(request):
facilities = Facilities.objects.all()
facilities_updated = Facilities_updates.objects.all()
facilityFilter = FacilityFilter(request.GET, queryset=facilities)
facilities = facilityFilter.qs
context = {'facility_list': facilities, 'facilityFilter': facilityFilter, 'facilities_updated': facilities_updated}
return render(request, "database/facilities/facilities_table.html", context)
filters.py
class FacilityFilter(df.FilterSet):
name = df.CharFilter(field_name='facility_name', label='Имя здания', lookup_expr='icontains',
widget=TextInput(attrs={'placeholder': 'Введите название (полностью или частично)'}))
description = df.DateFilter(field_name='description', label='Примечание', lookup_expr='icontains',
widget=TextInput(attrs={'placeholder': 'Введите примечание (полностью или частично)'}))
class Meta:
model = Facilities
fields = ['name', 'description']
HTML (для высплывающего окна):
<table class="table table-striped">
<thead class="border-border font-weight-bold" style="font-size: 18px">
<tr>
<td class="text-center">Название предприятия</td>
<td class="text-center">Примечание</td>
<td class="text-center">Инициатор</td>
<td class="text-center">Дата</td>
</tr>
</thead>
<tbody>
{% for facility in facilities_updated %}
{% if facility_list.id == facilities_updated.old_id %}
<tr class>
<td class="text-center">{{facility.facility_name}}</td>
<td class="text-center">{{facility.description}}</td>
<td class="text-center">{{facility.user}}</td>
<td class="text-center">{{facility.date}}</td>
</tr>
{% endif %}
{% endfor %}
</tbody>
</table>
Вот результат при нажатии на запись "SpaceX". Выводятся все записи таблицы Facilities_updated, а мне в данном случае нужны только последние 3.




