詹戈。创建对象ManyToManyField

2024-06-01 09:15:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在为我的模型编写测试。在

我尝试创建这样的对象:

    GiftEn.objects.create(gift_id=1,
    name="GiftEn",
    description="GiftEn description",
    short_description="GiftEn short description",
    categories='1',
    partner='1',
    addresses=2)

但我得到一个错误:

^{pr2}$

这是我的模型:

class GiftEn(models.Model):
    gift = models.ForeignKey(Private, on_delete=models.CASCADE)
    name = models.CharField(max_length=100)
    description = models.TextField(max_length=1000)
    short_description = models.TextField(max_length=500)
    categories = models.ManyToManyField(CategoryEn,)
    partner= models.ManyToManyField(Partner,)
    addresses= models.ManyToManyField(AddressWhereTakeGift,)

    def __str__(self):
        return '%s, %s, %s' % (self.name, self.description, self.short_description)

    class Meta:
        ordering = ('-gift__id',)

如何为这个模型创建对象?在


Tags: name模型selfidpartnermodelsaddressesdescription
1条回答
网友
1楼 · 发布于 2024-06-01 09:15:06

根据错误描述,在添加多个对象之前,您需要创建(保存)GiftEn对象:

giften = GiftEn.objects.create(
    gift_id=1,
    name="GiftEn",
    description="GiftEn description",
    short_description="GiftEn short description")

giften.categories.add('1')
giften.partner.add('1')
giften.addresses.add(2)

相关问题 更多 >