Django模板 - 查找列表中的至少一项是不是出现在其他列表中

Posted

技术标签:

【中文标题】Django模板 - 查找列表中的至少一项是不是出现在其他列表中【英文标题】:Django templates - find if at least one item from a list appears in other listDjango模板 - 查找列表中的至少一项是否出现在其他列表中 【发布时间】:2013-05-11 07:12:03 【问题描述】:

假设我有两个字符串或整数列表。我想检查第一个列表中的任何元素是否出现在第二个列表中,如果不满足该条件,则仅显示一次。如果我执行 for 循环两次,我将不会得到想要的结果 - 我想显示的项目将显示多次:

# I send this from view to template

b = ['id':1, 'id':2, 'id':3, 'id':4, 'id':5]
d = ['id':5, 'id':6, 'id':7, 'id':8]

# In template

% for a in b %
  % for c in d %
    % if not a.id == c.id %
      this will be displayed multiple times
    % endif %
  % endfor %
% endfor %

我怎样才能在这里只显示一次?这是检查此类事情的实用方法吗?

【问题讨论】:

【参考方案1】:

如果以上内容完全属于模板,可以争论,但如果您无法在视图中执行此比较,请使用templatetag

【讨论】:

好的,我明白了...将尝试使用模板标签。谢谢!

以上是关于Django模板 - 查找列表中的至少一项是不是出现在其他列表中的主要内容,如果未能解决你的问题,请参考以下文章

如何在django模板中读取传递过去的字典参数中的某一项?

Django - 检查列表是不是包含模板中的某些内容

检查列表 django 模板中是不是存在

如何判断一个值是 Django 模板中的字符串还是列表?

Django - 如何从模板中的查询集中获取最后一项

Django模板ifequal标签