Python 通过在Django中组合查询结果来创建数据

Python 通过在Django中组合查询结果来创建数据,python,django,Python,Django,在我的模型中,我有一个1-n关系,例如,1个教室-n个学生 Classroom 1 - Joe Classroom 1 - Tim Classroom 1 - Julia Classroom 2 - Bob Classroom 2 - Alice 在我看来,我想为每个教室显示一行,并为学生显示一个逗号分隔的列表: Classroom1 | Joe, Tim, Julia Classroom2 | Bob, Alice 现在,我找到每个教室的记录,创建学生列表,并将其结合起来创建字典

在我的模型中,我有一个1-n关系,例如,1个教室-n个学生

Classroom 1 - Joe

Classroom 1 - Tim

Classroom 1 - Julia

Classroom 2 - Bob

Classroom 2 - Alice
在我看来,我想为每个教室显示一行,并为学生显示一个逗号分隔的列表:

Classroom1 | Joe, Tim, Julia

Classroom2 | Bob, Alice
现在,我找到每个教室的记录,创建学生列表,并将其结合起来创建字典

有没有更有效的方法来创建此数据?我可以保存每个教室的学生名单吗?

例如,您有

class Classroom(models.Model):
    name = models.CharField()

    def __str__(self):
        return self.name


class Student(models.Model):
    name = models.CharField()
    classroom = models.ForeignKey('Classroom')

    def __str__(self):
        return self.name
您可以轻松地检索
教室中的所有学生

class_room1 = Classroom.objects.get(id=1)
class_room1.student_set.all()
比如你有

class Classroom(models.Model):
    name = models.CharField()

    def __str__(self):
        return self.name


class Student(models.Model):
    name = models.CharField()
    classroom = models.ForeignKey('Classroom')

    def __str__(self):
        return self.name
您可以轻松地检索
教室中的所有学生

class_room1 = Classroom.objects.get(id=1)
class_room1.student_set.all()

你能展示一些代码吗?添加您的模型和视图,但主要是模型扫描您是否显示一些代码?添加模型和视图,但大多数情况下,modelsI仍需要循环和处理所有教室对象。有什么办法可以避免吗?我相信你无法避免。好的,谢谢你的回答。@vishes_shell@SnehaShinde如果你觉得我的答案涵盖了你的问题,你可以接受。:)我仍然需要循环和处理所有课堂对象。有什么办法可以避免吗?我相信你无法避免。好的,谢谢你的回答。@vishes_shell@SnehaShinde如果你觉得我的回答涵盖了你的问题,你可以接受