无法使用条件将Django两个对象数组中的项目ID匹配

时间:2018-07-25 15:35:06

标签: python django if-statement django-templates django-template-filters

我的查询集代码在视图中

'seats': Seats.objects.filter(bus=bid).order_by('seat_name'),
'booking': Booking.objects.filter(schedule=sid),

如果条件代码在模板中

{% for seat in seats %}
{% for book in booking %}
{% if seat.id == book.seat_id %}
match: {{seat.id}} ==  {{book.seat_id}}<br>
{% else %}
<input type="checkbox" name="checks[]" value="{{ seat.id }}"> {{ seat.seat_name }}{{ seat.seat_no }}
{% endif %}
{% endfor %}

我需要禁用预订的座位,但是Django系统无法检查条件,它会显示所有座位。

1 个答案:

答案 0 :(得分:0)

我看到有一个目的,我不确定这是否是一个问题,或者您可以在预订时尝试if seat.id这样的方法:(通过列出已预订的座位)或类似的方法来删除第二个问题因为,这也会减少运行时间。