В Django у меня есть сложный запрос, где мне нужны только уникальные значения через внешний ключ, действительно ли это возможно?

У меня есть следующие модели:

class Indicator(models.Model):
    name = models.CharField(max_length=200)
    category = models.ForeignKey(IndicatorCategory)
    weight = models.IntegerField()
    industry = models.ForeignKey(Industry)

    def __unicode__(self):
        return self.name
    class Meta:
        ordering = ('name',)

class IndicatorRatingOption(models.Model):
    indicator = models.ForeignKey(Indicator)
    description = models.TextField()
    value = models.FloatField(null=True)

    def __unicode__(self):
        return self.description

class Rating(models.Model):
    product = models.ForeignKey(Product, null=True)
    company = models.ForeignKey(Company, null=True)
    rating_option = models.ForeignKey(IndicatorRatingOption)
    value = models.IntegerField(null=True)

То, что я должен сделать, получают все опции оценки компании двух компаний, не имея их перекрытие на их Индикаторах (rating.rating_option.indicator). Если существует конфликт, компания ',' всегда выигрывает компанию 'b'. Как я делаю это?

5
задан damon 30 June 2018 в 01:46
поделиться