【问题标题】:Creating a model object with a M2M and FK relationship创建具有 M2M 和 FK 关系的模型对象
【发布时间】:2011-05-29 21:39:00
【问题描述】:

我有以下型号--

class Category(models.Model):
    category = models.CharField(max_length=100)

class Credit(models.Model):
    person = models.CharField(max_length=100)
    position = models.CharField(max_length=100)

class Video(models.Model):
    title = models.CharField(max_length=100)
    category = models.ForeignKey(Category)
    credits = models.ManyToManyField(Credit)

我创建了以下 Category 和 Credit 对象 --

>>> Category.objects.create(category='animation')
>>> Category.objects.create(category='drama')
>>> Credit.objects.create(person='john', position='director')
>>> Credit.objects.create(person='tom', position='writer')

然后我“得到”这四个对象--

>>> cat1 = Category.objects.get(category='animation')
>>> cat2 = Category.objects.get(category='drama')
>>> cred1 = Credit.objects.get(person='john')
>>> cred2 = Credit.objects.get(person='tom')

但我在创建 Video 对象时遇到了困难。我将如何创建以下两个对象?

1) Video.objects.create(title='little italy', category=cat1, credits=cred1)  ??
2) Video.objects.create(title='new film', category=cat2, credits=cred1, cred2)  ??

谢谢。

【问题讨论】:

标签: django django-models


【解决方案1】:
>>> v1 = Video.objects.create(title='little italy', category=cat1)
>>> v1
<Video: little italy>
>>> v1.credits.add(cred1)

...等等...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-09
    • 2013-02-17
    • 2016-04-26
    • 1970-01-01
    相关资源
    最近更新 更多