Python 将多对多对象传递给变量

Python 将多对多对象传递给变量,python,django,orm,Python,Django,Orm,我有两个类,具有多对多关系,我的目标是用这两个模型中的数据填充“项”列表,以下是我的模型: class Bakery(models.Model): title = models.CharField('restaurant_name', max_length=100) class DeliveryService(models.Model): title = models.CharField('deliveryservice_name', max_length=100)

我有两个类,具有多对多关系,我的目标是用这两个模型中的数据填充“项”列表,以下是我的模型:

class Bakery(models.Model):
    title = models.CharField('restaurant_name', max_length=100)


class DeliveryService(models.Model):
    title = models.CharField('deliveryservice_name', max_length=100)
    bakery = models.ManyToManyField(Bakery)
以下是我的“视图”文件的逻辑:

item = []
bakerys = Bakery.objects.all()

for i in bakerys:
    item.append(i.title)
    item.append(i.deliveryservice.title)

我希望你得到了我想要的。我目前的“视图”文件逻辑是错误的,我知道,我只是不知道我能做什么来解决这个问题。谢谢您的时间。

以下内容似乎满足了您的要求。但奇怪的是,你想要创建一个列表,其中包含不同对象的所有标题,所有标题都混合在一起,并且可能有重复的标题(如果一个送货服务链接到多个面包店,则会添加两次)

你真的应该好好阅读这本书。关于如何做这些事情,文档非常清楚


如果你真的想要所有的标题,Sayse也有一个很好的答案。他们的答案还以元组的形式对所有内容进行分组,并通过使用更少的数据库查询以更高效的方式完成。他们的答案是:
Bakery.objects.values('title','deliveryservice\uu title')

首先,您的类不会从任何东西继承。通常,它们应该继承自
模型。Model
我建议阅读官方教程和文档,因为它将回答您的问题。当然,它们是从“models.Model”继承而来的,我不想把它们放在这里,因为我不明白你们想在这里做什么。。它仅仅是面包房。对象。值('title','deliveryservice\uu title')?你想要一个列表。好的,但是有订单吗?或者这没关系?我想用两个变量填充我的“项目”列表,第一个:面包店的标题,第二个:DeliveryService的标题,这对面包店来说是多对多的,但当我像上面这样做时,我一直在获取对象没有属性“getattr”错误
item = []
bakerys = Bakery.objects.all()

for i in bakerys:
    item.append(i.title)
    for j in i.deliveryservice_set.all():
        item.append(j.title)