2017-06-05 60 views
2

我有一個模型,例如,A有一個xxx字段(帶有B模型的ManyToManyField)。我如何查詢並返回像:如何使用其ManyToManyField相關對象返回對象

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

任何幫助表示讚賞。我Django的新手:d

+0

你可以給一個(假的,如果你喜歡)的型號代碼[簡單完整的示例](https://stackoverflow.com/help/mcve)?足以讓我們運行代碼,看看你的意思。 – bignose

回答

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

你可以試試這個,讓所有列,如果你需要特定的,你可以通過他們的內部價值。

記住一個是要在所有小寫字母

1

假設這些模型使用該模型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()]