Как создать несколько записей в ManyToManyField программно - PullRequest
1 голос
/ 18 января 2012

Боюсь, нубский вопрос.У меня есть база данных с несколькими классами, среди которых классная картинка и страница:

class Picture(models.Model):
    picture_uuid = models.CharField(max_length=36)

class Page(models.Model):
    page_uuid = models.CharField(max_length=36)
    pictures = models.ManyToManyField(Picture)

Создание новых записей изображений в моей базе данных просто:

newPic = Picture.objects.create(picture_uuid="SAMPLE-UUID")
newPic2 = Picture.objects.create(picture_uuid="SAMPLE2-UUID")
newPic3 = Picture.objects.create(picture_uuid="SAMPLE3-UUID")

и т. Д.

Тем не менее, я понятия не имею, как добавить эти картинки на определенную страницу:

newPage = Page.objects.create(page_uuid="SAMPLE-PAGE-UUID", pictures= … )

Что, если я хочу достичь этого программно, то есть добавить три мои фотографии в эту новую страницу?

1 Ответ

1 голос
/ 18 января 2012

Просто сделайте это в следующем утверждении:

newPage = Page.objects.create(page_uuid="SAMPLE-PAGE-UUID")
newPage.pictures.add(newPic, newPic2, newPic3)

В документах

...