Django模型如果条件不到达,如何在保存时添加ManyToManyField

时间:2016-02-25 15:58:13

标签: django django-models

我有一个包含布尔字段的模型文章。

当我添加一篇新文章时,如果这个bool为True,我希望我的国家(这是一个ManyToMayField)用特定的一个下注。

布尔:

global_regions = models.BooleanField('Global', default=True)

The ManyTomany:

article_country = models.ManyToManyField(Country, verbose_name=_('Country of the article'),
                                 blank=True, null=True,
                                 related_name='country_press_article')

我试着这样做:

def save(self, *args, **kwargs):
    if (self.article_url[:4] != "http") and (self.article_url[:5] != "https"):
        self.article_url = "https://" + self.article_url
    if not self.slug:
        self.slug = slugify(self.title)
    if self.global_regions == True: #here is the condition
        self.article_country.add(Country.objects.get(id=257))
    super(Article, self).save(*args, **kwargs)

但是,正如我所料,它不起作用。

如果我希望它可以工作,我该怎么办?

0 个答案:

没有答案