Django 比较模板中的两个表

Django 比较模板中的两个表,django,django-models,django-templates,Django,Django Models,Django Templates,我有两个django模型,User和Follow。 在Follow表中,我有两个属性a和b,这意味着a跟在b后面。 User表就是django.contrib.auth.User 假设我在用户A主页上,A在B,C之后,而不是D 我想列出A主页中的所有用户名,并突出显示A下面的用户名 在这种情况下,B,C应突出显示,D不应突出显示 我在考虑(伪代码) 对于用户中的用户: 有关以下内容: 如果user.username==follow.username: flag=true 打破 如果标志: #打印

我有两个django模型,
User
Follow
。 在
Follow
表中,我有两个属性
a
b
,这意味着
a跟在b
后面。
User
表就是django.contrib.auth.User

假设我在
用户A
主页上,
A
B
C
之后,而不是
D

我想列出
A
主页中的所有用户名,并突出显示
A
下面的用户名

在这种情况下,
B
C
应突出显示,D不应突出显示

我在考虑(伪代码)

对于用户中的用户:
有关以下内容:
如果user.username==follow.username:
flag=true
打破
如果标志:
#打印颜色user.username

其他的 #正常打印。。
但我不认为django模板允许我这么做。 还有其他方法吗

这是我在django模板中的代码

  {% for user in all_user %}
      {% for follower in followers %}
          {% ifequal user.username follower.follow.username %}
              <p class="following">{{user.username}}</p>
          {% endifequal %}
      {% endfor %}
      <p>{{ user.username }}</p>
  {% endfor %}
{%for user in all_user%}
{followers%中的followers%为%1}
{%ifequal user.username follower.follow.username%}

{{user.username}

{%endifequal%} {%endfor%} {{user.username}

{%endfor%}
这将复制“A”正在跟踪的用户


非常感谢您

Hm,我将通过执行您在这里所做的操作,并将变量“flag”传递给您的模板以及其他对象来实现这一点

{% if flag == True %}
    <do whatever>
{% endif %}
{%if标志==True%}
{%endif%}

您还可以在for循环中为用户添加属性,然后在模板中检索该属性

for user in users :
    for follow in Following:
        if user.username == follow.username:
             user.followed = True
             break
然后在模板中

{% for user in users %}
    {% if user.followed %}
        ....
    {% else %}
        ....
    {% endif %}
{% endfor %}

您的意思是在
Follow
模型中再添加一个attr?这意味着我必须在数据库中包含所有用户对?也许我误解了这个问题。我认为您确定用户是否被跟踪的部分已经得到了处理(您的第一个示例或多或少是伪代码)。我的解决方案更多的是一种将数据传递给模板的干净方法(因为您说过我认为django模板不允许我这样做)。
{% for user in users %}
    {% if user.followed %}
        ....
    {% else %}
        ....
    {% endif %}
{% endfor %}