繁体   English   中英

如何从Django外键关系中的查询集中获取“对象”列表

[英]How to get the list of “objects” from a queryset in a Foreign Key relationship in Django

如何从外键实现查询集获取对象列表? (例如,当您使用“ for foo:print(x)中的x”遍历列表时)

下面的代码:

class class Course(models.Model):
    name = models.CharField(max_length=20)
    user = models.ManyToManyField(User, related_name='typecourses')
    description = models.TextField(max_length=500)

class Module(models.Model):                                                         
    name = models.CharField(max_length=20)
    courses = models.ForeignKey(Course, on_delete=models.CASCADE, related_name='courses', null=True)

以下是我在“视图”中尝试过的两个查询,它们都输出与查询集相同的结果。

1/ module_taken = list(Course.objects.get(id=1).courses.all())
2/ module_taken = Module.objects.select_related('courses').all()

结果:

<QuerySet [<Module: Foo>, <Module: Bar>]>

任何帮助将非常感激。

我想您想做的是:

course_taken = Course.objects.get(id=1)

现在上课的课程包含id = 1的对象课程

modules_course = course_taken.courses.all()

现在模块课程包含一个查询集,其中所有模块都以course_take作为其外键,请注意课程只是您在相关名称中输入的名称

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM