gpt4 book ai didi

python - 如何查询Django ORM中的二层数据?

转载 作者:太空宇宙 更新时间:2023-11-04 04:59:16 25 4
gpt4 key购买 nike

我有两个模型:

class AddressRegion(models.Model):
name = models.CharField(max_length=8)


class AvailableArea(models.Model):
name = models.CharField(max_length=8)
addressregion = models.ForeignKey(AddressRegion, default=1)

在模板中我想方便地使用查询模型。

如果现在我查询我只知道使用 for 循环的数据:

addressRegions = models.AddressRegion.objects.all()

for ar in addressRegions:
availableArea = models.AvailableArea.objects.filter(availablearea = ar)

然后做一些方法来收集它们。

是否有一些简单的方法可以做到这一点?因为我相信 Django 对用户很好。

最佳答案

要获得 child ,您可以使用小写的模型名称 _set 属性:

ar.availablearea_set.all()
# ^^^^^^^

或添加 related_name

class AvailableArea(models.Model):
name = models.CharField(max_length=8)
addressregion = models.ForeignKey(AddressRegion, default=1, related_name='areas')
# ^^^^^

并使用它

ar.areas.all()

关于python - 如何查询Django ORM中的二层数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46235514/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com