【发布时间】:2021-11-30 06:15:44
【问题描述】:
我对 django 和 python 完全陌生,请帮助我完成以下查询:
我有 3 个模型,与给定的样本数据有多个外键关系
现在我需要通过 django ORM 或 Serializers 输出 3 个输出
-
对于给定的学生ID,显示每个科目的学生详细信息和分数
-
列出所有学生的总分(本例中为三门科目的总和)
-
根据给定的英语样本分数,所有学生在每个科目的平均分数为 65 , 95,平均为 80
{ Subject: "English", average: " 80" }
class Student(models.Model):
student_id = ShortUUIDField(primary_key=True, editable=False)
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
class Subjects(models.Model):
subject_code = ShortUUIDField(primary_key=True, editable=False)
subject_name = models.CharField(max_length=100)
class Reports(models.Model):
student = models.ForeignKey(Student,on_delete=models.CASCADE,related_name='student_report')
subject = models.ForeignKey(Subjects,on_delete=models.CASCADE,related_name='subject',default=None)
marks = models.IntegerField(max_length='3')
class Meta:
unique_together = ("student", "subject")
样本数据
Student data
student_id first_name last_name
1 abc x
2 def y
Subjects data
subject_code subject_name
1 English
2 Science
3 Math
Reports data
student_id subject_id marks
1 1 65
1 2 75
1 3 92
2 1 95
2 2 85
2 3 62
【问题讨论】:
标签: python-3.x django django-models django-rest-framework django-views