Django多对多领域

时间:2019-02-01 13:01:13

标签: django manytomanyfield

我的Django模型如下:

class A(models.Model):
    field1 = models.ForeignKey('UserProfile', default=None, 
    null=True, blank=True)
    field2 = models.ForeignKey('test.A', default=None, null=True, 
    blank=True)
    field3 = models.ForeignKey('test.B', default=None, 
    null=True, blank=True)
    field4 = models.ManyToManyField('test.C', default=None, 
    null=True, blank=True)
    field5 = models.ForeignKey('test.D', default=None, null=True, 
    blank=True)
    field6 = models.ManyToManyField('test.E', default=None, null=True, 
    blank=True)
    field7 = models.ManyToManyField('test.F', default=None, 
    null=True, blank=True)

比方说,我想获取一个对象A及其field4,field6和field7 id的列表。一旦获取onject A,我就对所有许多字段进行a.field4.values_list('id',flat = True)。这将创建对db的其他请求。能否在单个请求中获取所有ID?例如:对于外键,我们使用select_related,对于ManytoManyField我们是否没有类似的东西?

0 个答案:

没有答案