【发布时间】:2020-10-20 07:50:05
【问题描述】:
我如何列出每个 MyModelA 的 MyModelB 对象,当它们的关系不是直接的,而是通过 MyModelC 时。
models.py
class MyModelA(models.Model):
name = models.CharField(max_length=50)
class MyModelB(models.Model):
name = models.CharField(max_length=50)
class MyModelC(models.Model):
name = models.CharField(max_length=50)
my_model_a = models.ForeignKey(MyModelA, on_delete=models.CASCADE)
my_model_b = models.ManyToManyField(MyModelB)
my_model_b_list_of_each_c_for_each_a.html
{% for a in object_list %}
{% for c in a.my_model_c_set %}
{% for b in c.my_model_b_set %} # Can I list MyModelBs of each MyModelC?
{% endfor %}
{% endfor %}
{% endfor %}
【问题讨论】:
-
你是什么意思所有 mymodelb 对于 mymodel a,它们不相关为什么他们会有任何相关的列表,看起来你做模型错了。为示例数据样本写一些额外的细节,而不是在 cmets 中,而是编辑帖子
-
为什么不直接编辑问题并添加它,而不是添加带有道歉的评论。
-
我有 3 个模型(A、B 和 C)。 A和B是兄弟姐妹。 C 对 A 有一个 ForeignKey,对 B 有一个 ManyToMany 字段。我的问题是:给定一个 A 列表,我可以遍历与 A 没有直接关系的 B 吗?我可以列出每个 A 到 C 的 B 吗?
标签: django relationship children siblings