连接两个查询集

时间:2020-07-14 09:24:54

标签: django django-queryset

这是我先前提出的问题的发展。

我有这个查询集

user_packages = ModulePackage.objects.filter(student=user.student).prefetch_related('individual_modules')

还有这个

module_data = StudentModuleData.objects.filter(package__in=user_packages, student=user.student)

StudentModuleData(模块数据)与单个模块(模块)具有一对多关系

class StudentModuleData(models.Model):
    student = models.ForeignKey('users.Student', related_name='student_module_data', on_delete=models.CASCADE)
    module = models.ForeignKey(BaseModule, on_delete=models.CASCADE)
    package = models.ForeignKey(ModulePackage, on_delete=models.CASCADE, default=None, null=True)

现在我同时拥有这两个,如何将它们加入模板,这样我就可以说

{% for package in user_packages.all %}
{{ package }}

{% for module in package.individual_modules.all %}
{{ module }}

{% for extra_data in module.extra_data %} # <-- this is what I can't get working
{{ extra_data }}

(调用{% for data in module.studentmoduledata_set.all %}无济于事)

谢谢。

0 个答案:

没有答案