@GlamorousCar

Как сравнивать поля зависимой модели в Django?

Здраствуйте. В моем проекте есть следующие модели: Item с различными полями и Prices, зависимая от Item, а также заданы поля price и discont_price. Я бы хотел узнать, как можно получить набор элементов Item с условием что price!=discont_price.
model.py
class Item(models.Model):
    name = models.TextField(max_length=512,db_index=True)
    weight = models.IntegerField(default=0)
    description = models.TextField()
    composition = models.TextField(default='Состав')
class Prices(models.Model):
    item = models.ForeignKey(Item, on_delete=models.CASCADE)
    old_price= models.DecimalField(default=100.00,max_digits=9, decimal_places=2, verbose_name='Цена')
    price= models.DecimalField(default=100.00,max_digits=9, decimal_places=2, verbose_name='Цена по скидке')

Мне почти получилось это сделать с помощью
views.py
def sales_view(request):
    item_list = Item.objects.filter(Prices__old_price__gt=F('Prices__price'))
    return render(request, 'main-page.html',
                  {'item_list ': item_list })

но тогда полученный набор содержит дубликаты. Вероятнее всего, это стоит делать совершенно иначе. Буду рад услышать любые замечания и наставления
  • Вопрос задан
  • 250 просмотров
Решения вопроса 1
JRazor
@JRazor
Senior StarkOverFlow Programmer
В чем проблема то? Это запрос нагуглить https://stackoverflow.com/questions/5877306/remove...?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы