2

ユーザー、質問、回答を含むモデルがあります。ここで、ユーザーが回答した質問を表示したいと思います。

私はこれをviews.pyに書いています:

    answers = Answer.objects.filter(author__username=user.username)[:5]

そしてこれをテンプレートで:

{% for answer in answers %}
{{ answer.question.head }} <hr>
{% endfor %}

そして、2 つの質問が 5 回繰り返され、最後に hr 行が表示されます。ユーザーが2つの回答に対して5回回答したとしても、2つの質問を見たいので、これを試します:

    answers = Answer.objects.filter(author__username=user.username).values('question__head').distinct()[:5]

しかし、ページを開くと、何らかの理由で hr 行が 2 行しか表示されず、コンテンツが表示されません。ORMを試してみましたが、正しく動作します

>>> Answer.objects.filter(author__pk=2).values('question__head').distinct()
[{'question__head': u'question1?'}, {'question__head': u'question2?'}]

明確な条件を追加した後、{{ answer.question.head }} がテンプレートで機能しなくなったのはなぜですか?

4

1 に答える 1