我有一个关于 Django 中的外键行为的问题。
我在我的模型中定义了一个树层次结构,其中父子关系在子模型中表示为外键。现在,从叶级别开始,我想检索父级、父级的父级等作为我定义的对象。
这可以通过简单地调用 Leaf.objects.all() 并从 Python 代码中正常访问对象来实现。
但麻烦来了。对于每个这样的调用,Django 都会针对适当的外部 ID 进行 SELECT 查询。这显然是非常缓慢和低效的。我想告诉 Django 类似“嘿,只需一次获取包括外键在内的所有数据,只需在数据库端进行连接和所有内容”。这可能吗?