Django获取模型的所有相关值

brs*_*gic 3 django django-models django-queryset

这些是我的模型

class Order(models.Model):
    name = ...

class OrderDetail(models.Model)
    order = models.OneToOneField(Order,null=False)
    comment = ...

class LastUpdate(models.Model)
    order = models.OneToOneField(Order,null=False)
    date = ...
Run Code Online (Sandbox Code Playgroud)

name 当我编写 Order.objects.all().values() 时,它给了我一个仅包含但我需要获取值的列表name,orderdetail__comment,lastupdate__date

我可以通过写信来得到它们

Order.objects.values('name','orderdetail__comment','lastupdate__date').all()
Run Code Online (Sandbox Code Playgroud)

但是与该命令相关的模型有很多,我不想全部写出来。

如何获取相关字段的所有值?

iMo*_*om0 5

首先,您查询

orders = Order.objects.select_related('orderdetail__comment', 'lastupdate__date')
Run Code Online (Sandbox Code Playgroud)

然后,通过以下方式获取值

orders.values('name', 'orderdetail__comment', 'lastupdate__date')
Run Code Online (Sandbox Code Playgroud)