例如,我有三个模型:
Model A:
`field = CharField`
Model B:
`fk = Model A`
Model C:
`fk = Model B`
现在我想通过模型 A 的参考来获取模型 C 的值,我该如何实现呢?模型 B 可以有模型 A 的多个记录。现在我想根据这些记录从模型 C 中获取所有结果。
因此,通过在模型 A 中使用 ID 更具体,我想从模型 C 中获取所有结果。
例如,我有三个模型:
Model A:
`field = CharField`
Model B:
`fk = Model A`
Model C:
`fk = Model B`
现在我想通过模型 A 的参考来获取模型 C 的值,我该如何实现呢?模型 B 可以有模型 A 的多个记录。现在我想根据这些记录从模型 C 中获取所有结果。
因此,通过在模型 A 中使用 ID 更具体,我想从模型 C 中获取所有结果。
C.objects.filter(fkB__fkA = id_in_model_A)
要访问其他外键的变量,请使用 double under score
文档:https ://docs.djangoproject.com/en/3.2/topics/db/queries/#lookups-that-span-relationships