如何使用其ManyToManyField相关对象返回对象

问题描述:

我有一个模型,例如,A有一个xxx字段(带有B模型的ManyToManyField)。我如何查询并返回像:如何使用其ManyToManyField相关对象返回对象

{ 
    'f1': 'xxx', 
    'f2': 'yyy', 
    photos: [{photo1}, {photo2},...] 
} 

任何帮助表示赞赏。我Django的新手:d

+0

你可以给一个(假的,如果你喜欢)的型号代码[简单完整的示例](https://stackoverflow.com/help/mcve)?足以让我们运行代码,看看你的意思。 – bignose

B.objects.get(pk=1).a.all().values() 

你可以试试这个,让所有列,如果你需要特定的,你可以通过他们的内部价值。

记住一个是要在所有小写字母

假设这些模型使用该模型A或型号:

from django.db import models 

class LoremIpsum(models.Model): 
    identifier = models.CharField() 
    photos = models.ManyToManyField('Photo') 

class Photo(models.Model): 
    filename = models.CharField() 

因为LoremIpsum.photos场是ManyToManyField,它的值将作为QuerySet

lorem_ipsum = LoremIpsum.objects.get(identifier="dolor") 
photo_filenames = [photo.filename for photo in lorem_ipsum.photos.all()]