Python Django在模板内制作查询

Python Django在模板内制作查询,python,django,Python,Django,我有以下问题。我需要根据questionitem.question\u id获取问题的信息 我有以下文件 # models.py class Question(models.Model): qtype_id = models.ForeignKey(QuestionType, on_delete=models.CASCADE ) q_discription = models.CharField(max_length=150) def __iter__(self):

我有以下问题。我需要根据questionitem.question\u id获取问题的信息 我有以下文件

# models.py

class Question(models.Model):
    qtype_id = models.ForeignKey(QuestionType, on_delete=models.CASCADE )
    q_discription = models.CharField(max_length=150)

    def __iter__(self):
        return self.pk

class QuestionItem(models.Model):
    exam_id = models.ForeignKey(Exam, on_delete=models.CASCADE)
    question_id = models.ForeignKey(Question, on_delete=models.CASCADE)
    question_pontuation = models.FloatField(default=0.0)

    def __iter__(self):
        return self.pk


# views.py

def ExamDetail(request, exam_id):
    exam = get_object_or_404(Exam, pk=exam_id)
    questionitems = QuestionItem.objects.filter(exam_id= exam_id).values_list('id', flat=True)
    questions = Question.objects.filter(pk__in=questionitems)
    context = {
        'exam': exam,
        'questions': questions,
        'questionitem': questionitems,
    }
    return render(request, 'evaluation/exam_detail.html' , context)
现在在exam_detail.html上,我有如下内容:

{% for questionitem in exam.questionitem_set.all %}
    Question {{questionitem.id}}</a>:  {{question.q_discription}}
{% endfor%}
{%用于exam.questionitem\u set.all%}
问题{questionitem.id}:{{Question.q_description}
{%endfor%}

但是没有显示任何内容,我需要在questionitem.question\u id中显示问题的描述,并且我无法更改
模型.py

可能,您在访问queryset in loop时遇到了问题。将代码更改为:-

{% for questionitem in exam.questionitem_set.all %}
   Question {{questionitem.id}}</a>:  {{questionitem.question_id.q_discription}}
{% endfor%}
{%用于exam.questionitem\u set.all%}
问题{{questionitem.id}:{{questionitem.Question_id.q_description}
{%endfor%}

q_description是问题类的一部分,可以使用questionitem实例上的问题id访问,您可以在循环中收到该问题。

您可以与我们共享
考试
模型吗?