2017-12-30 10 views
0

ためチェックのメンバーは、私が表示したいと思い、各プロジェクトには、いくつかを持っているチームへのリンクであり、各メンバーは内部の私のデータベースに格納され、調査に答える必要が私のアプリではループ

を「レスポンス」を使用して属性私のページのジャンボトロンは、すべてのユーザーがデータベースにレスポンスを持っている場合にのみ表示されます。

は、私が試した:

<div class="container paddingtop80 marginbottom30"> 
{% for member in project.team_id.members.all %} 
    {% if member.response_set.count > 0 %} 
    <div class="jumbotron greenback"> 
    <h4>Welcome to the Project test "{{ project.name }}" Detail page</h4> 
    </div> 
    {% else %} 
    <div class="jumbotron greenback"> 
     <h4>Welcome to the Project "{{ project.name }}" Detail page</h4> 
    </div> 
    {%endif%} 
{% endfor %} 
<div class="container paddingtop80 marginbottom30"> 
{% for member in project.team_id.members.all %} 
    {% if member.response_set.count > 0 %} 
    <div class="jumbotron greenback"> 
    <h4>Welcome to the Project test "{{ project.name }}" Detail page</h4> 
    </div> 
    {% else %} 
    <div class="jumbotron greenback"> 
     <h4>Welcome to the Project "{{ project.name }}" Detail page</h4> 
    </div> 
    {%endif%} 
{% endfor %} 
</div> 

問題は、あなたが今見ることができるように、私は3人のメンバーを持っているので、私のジャンボトロンは3回印刷されていることです。

レスポンスが存在する場合、または> 0の場合に3人のメンバーを確認し、ジャンボトロンを1回だけ印刷するにはどうすればよいですか?

答えて

1

メンバーのいずれかの回答があるかどうかを確認する方法をプロジェクトで定義します。今

class Project(models.Model): 
    ... 
    def has_member_responses(self): 
     return Response.objects.filter(member__team__project=self).exists() 

テンプレートにあなたがforループを削除し、簡単に行うことができます:ような何か

{% if project.has_member_responses %} 
+0

Thxを、あなたは非常に多くのダニエル! – Ben2pop

関連する問題

 関連する問題