from django.db import models from django.core.validators import MaxValueValidator, MinValueValidator class Review(models.Model): is_secured = models.BooleanField(default=False) project = models.ForeignKey('projects.Project', related_name='reviews') stars = models.IntegerField(validators=[MinValueValidator(1), MaxValueValidator(5)]) text = models.TextField() target_customer = models.ForeignKey('users.User', related_name='reviews_by_contractor') target_contractor = models.ForeignKey('users.User', related_name='reviews_by_customer') from_customer = models.ForeignKey('users.User', related_name='contractor_reviews') from_contractor = models.ForeignKey('users.User', related_name='customer_reviews') def __str__(self): return self.pk class Meta: verbose_name = 'Отзыв' verbose_name_plural = 'Отзывы' # unique_together = ( # ('from_customer', 'target_contractor', 'project'), # ('from_contractor', 'target_customer', 'project'), # )