class GuestOrder(models.Model):
comment = models.CharField(max_length=400, blank=True, null=True)
guest = models.ForeignKey(Guest, on_delete=models.SET_NULL, null=True)
dish = models.ManyToManyField(Dish)
ingredient = models.ManyToManyField(Ingredient)
table = models.ForeignKey(Table, on_delete=models.CASCADE, blank=True, null=True)
我有一个返回3个GuestOrder示例的查询集。
guest_orders = GuestOrder.objects.filter(table=table)
<QuerySet [<GuestOrder: GuestOrder object (567)>, <GuestOrder: GuestOrder object (568)>, <GuestOrder: GuestOrder object (569)>]>
我有一本字典,里面的值是dish的示例。
{
"guests":{
"23": [1, 2],
"24": [2],
"25": [3]
}
}
如何将这些值中的每一个设置为一个客户端示例?
这是我试过的(字典的名字是客人)
for guestorder in guest_orders:
for key, value in guests.items():
guestorder.dish.set(value)
这仅将[3]设置为菜
更新
for guestorder in guest_orders:
for key, value in guests.items():
pass
print(value)
guestorder.dish.set(value)
打印的结果如下
[3]
[3]
[3]
我不明白为什么我需要帮助。
2条答案
按热度按时间xlpyo6sf1#
试试这个
https://docs.djangoproject.com/en/4.1/topics/db/examples/many_to_many/
q8l4jmvw2#
所以我将dict值附加到一个新列表中,并迭代查询集和列表。