Django Template:从显示用户列表中排除request.user

时间:2018-06-16 21:00:33

标签: python django django-templates

我有一个简单的问题。下面的html代码返回所有喜欢博客的用户的列表。如何从列表中排除请求用户?

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:app="http://schemas.android.com/apk/res-auto"
 android:layout_width="match_parent"
 android:layout_height="match_parent">
     <LinearLayout
      android:id="@+id/slidelinear_info"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:gravity="center"
      android:orientation="vertical">
         <TextView /> ....
         <de.hdodenhof.circleimageview.CircleImageView 
          xmlns:app="http://schemas.android.com/apk/res-auto"
          android:id="@+id/slideimg"
          android:layout_width="200dp"
          android:layout_height="200dp"
          android:paddingTop="10dp"
          android:layout_centerHorizontal="true"
          android:layout_centerVertical="true"
          app:civ_border_color="@color/black"
          app:civ_border_width="3dp" />
        <TextView /> ....
    </LinearLayout>
</ScrollView>

我试过: <div class="collapse" id="likes"> <ul> {% for like in instance.likes.all %} <li> {{like}} </li> {% endfor %} </ul> </div> 或类似的东西,但没有结果。提前致谢

1 个答案:

答案 0 :(得分:4)

最简单的方法是使用{% if ... %}过滤掉特定用户:

<div class="collapse" id="likes">
    <ul>
        {% for like  in instance.likes.all  %}
        {% if like != request.user %}
        <li>
            {{like}}  
        </li>
        {% endif %}
        {% endfor %}  
    </ul>
</div>