Скажем, у меня есть модель для сообщений в социальных сетях, пользователей и нравится:
class Post(models.Model):
submitter = models.ForeignKey(User, null=False, default=None)
content = models.CharField()
date = models.DateField()
with_likes = PostLikeCountManager()
objects = models.Manager()
class Like(models.Model):
user = models.ForeignKey(User)
post = models.ForeignKey(Post)
time = models.DateTimeField(auto_now_add=True)
Было бы полезно вспомнить модель Post
как представляющую пост Facebook
. Теперь я хотел бы ограничить одно, как за сообщение на пользователя. Как мне это достичь? Один из способов - создать составной первичный ключ (user
, Post
) атрибутов класса Like
. Я не знаю, как добиться этого в Django. Другой - использовать unique=True
для двух атрибутов одновременно. Возможно ли это?
Спасибо.