如何通过访问转换外键获取第三张表中的所有行?

问题描述

早上好! 有一个类似的模型:

class A( models.Model ):
  field = models.CharField()

class B( models.Model ):
  a = models.ForeignKey( A,on_delete = models.CASCADE,related_name = 'a_b_a' )

class C( models.Model ):
  b = models.ForeignKey( B,related_name = 'b_c_b' )

请参阅表“ A”:

c_all = A.objects.all()

我需要以某种方式添加查询,以便提取表“ C”中的所有行。表“ B”可以有多个行引用“ A”,类似地,表“ C”可以有多个行引用“ B”中的任何行。

UPD: 不得不从相反的方向走,我不知道这是否是正确的选择,但是它可行:

a_get = A.objects.get (id = 123)
c_all = C.objects.filter (b__a = a_get)

有人可以再发表评论吗?或者我可以在这个选项下停下来吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)