0

首先让我向您展示我的模型:

class ChannelStatus(models.Model):

        channel = models.ForeignKey(Channel,unique_for_date="date")

        date = models.DateField()

        platform = models.ManyToManyField(Platform)

现在,当我要创建 ChannelStatus 条目时,不能有多个条目是相同的频道和日期。现在,我想将其更改为每个频道的唯一性为每个平台的日期,如此不同平台可以有多个相同日期的相同频道。我怎样才能做到这一点?

4

1 回答 1

2

好吧,这个呢。(未经测试的代码。)

class ChannelStatus(models.Model):

        channel = models.ForeignKey(Channel)

        date = models.DateField()
        class Meta:
            unique_together = ('channel', 'date')



class ChannelM2M(models.Model):
    channel_status = models.ForeignKey(Channel)
    platform = models.ForeignKey(Platform, unique = True)

[旧答案]

 class Meta:
    unique_together = ('channel', 'date', 'platform')

顺便说一句,我会从日期更改第二个字段的名称,您正在使用日期时间,有时这样做from datetime import date,您会被咬

于 2009-08-21T12:10:20.460 回答