在Django上获取模板中过滤结果的计数

时间:2016-10-12 15:01:52

标签: django

我试图像这样访问模板上的相关模型:

course.course_set.all.0.section_set.all.0.student_assignation.count

问题在于我想要计算所有具有active = True属性的学生作业。

我希望能够做到这样的事情:

course.course_set.all.0.section_set.all.0.student_assignation(active=True).count

如何在django模板上完成此操作?

2 个答案:

答案 0 :(得分:1)

Django模板适用于此类复杂查询。 有几种方法可以处理这个

一,创建自定义django template tag

二,创建一个提供此信息的类方法。

实施例

class Course:
    ...
    def sutdent_assign_count(self):
        #Your query goes here..

答案 1 :(得分:0)

模板中的逻辑太多了。在您的某个模型类上创建一个实际返回所需数字的方法;我建议一个,但是你不清楚你在做什么(为什么.all.0,其他结果不重要?为什么course.course_set,是一个对自己来说有多少?)。你的模特是什么样的?

您如何描述您用英语显示的内容?这可能会暗示你应该创建什么样的方法。