Уникальные пары внешних ключей с Django
У меня есть три модели: Продукты, пользователи иотзывы .
Отзыв связан с продуктом и пользователем следующим образом:
class Review(models.Model):
product = models.ForeignKey(Product)
user = models.ForeignKey(User)
review_text = models.TextField()
creation_date = models.DateTimeField(auto_now_add=True)
Я хотел бы разрешить каждому пользователю отправлять только один отзыв на продукт. Каков рекомендуемый способ достижения этой цели? Через модель, через верификацию или что-то еще? Я очень новичок в Django / Python. Спасибо.
1 ответ:
Использование
unique_together
чтобы убедиться, что каждая комбинация пользователя и продукта уникальна:class Review(models.Model): class Meta: unique_together = ['user', 'product'] user = models.ForeignKey(User) product = models.ForeignKey(Product)