Django 多表关联查询

django 关联表多表查询问题:
如:有A、B、C、D四个模型。都通过ForeignKey关联。
如:A模型是“jiaoshi”,B模型是xuesheng,C模型是各科成绩。需要查询XXji下面全部学生的各科成绩。

A对B和B对C都是一对多的关系
可以在模型文件中在ForeignKey里添加参数related_name="XXX",这样就可以通过这个模型的名字.XXX来访问到所有外键数据组成的QueryDict
比如说在A对于B外键代码是b = models.ForeignKey(B, related_name="a"),B对于C的外键代码是c = models.ForeignKey(c, related_name="b"),那么查询A下面的B的所有的C的代码可以用嵌套循环实现:

def get(a:A):
  for i in a.b:
    for j in i.c:
      print(j)  # 此时j表示的是一个C模型

你可以参考这篇文章,使用表的一对多,一对一,多对多进行关联管理https://blog.csdn.net/HeroicLee/article/details/121382626