我有两个for循环。一个包含一个表中所有数据的数组,另一个包含一个其中外键是第一个数组中的表的数组。
我想查看有多少个匹配项并检查,但循环不起作用。
{% if comunidades %}
{% for comunidad in comunidades %}
{% if likes %}
{{ likes[0].comunidad.id }}
{{ likes[1].comunidad.id }}
--{{ comunidad.id }}--
{% if comunidad.id in likes|keys %}
OK
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
此打印:1 3 --3--
1 3 --2--
1 3 --1-- OK
谢谢
因为Likes数组的键是一个对象。您只应像map filter那样使用对象的ID,例如:
{% for comunidad in comunidades %}
{% if likes %}
{{ likes[0].comunidad.id }}
{{ likes[1].comunidad.id }}
--{{ comunidad.id }}--
{% if comunidad.id in likes|map(p => p.comunidad.id) %}
OK
{% endif %}
{% endif %}
{% endfor %}
希望此帮助