Как я могу найти мои самые дорогие продукты? - PullRequest
0 голосов
/ 02 апреля 2019

На странице сведений о моем продукте я хочу показать выбранный продукт, а ниже - мои самые дорогие продукты.

Как я могу получить мои самые дорогие продукты?Я пытаюсь заставить что-то вроде этого работать:

product_detail_view = get_object_or_404(Product,id=id)
most_expensive_products = Product.object.filter(price = ??????????) 
context { 'product_detail_view': product_detail_view ,
          'most_expensive_products':most_expensive_products }
return render (... )

Что я должен поставить вместо ??????????

Нужно ли это делать в самой моей модели?

Вот моя модель:

class Product(models.Model):
    title = models.CharField(max_length=120)
    car = models.CharField(max_length=120)
    tag = TaggableManager()
    slug = models.SlugField()
    description = models.TextField(blank=True,null=True)
    price = models.DecimalField(max_digits=50,decimal_places=2)
    acitve = models.BooleanField(default=True)
    timefield = 
    models.DateTimeField(auto_now_add=True,auto_now=False)
    updated = models.DateTimeField(auto_now_add=False,auto_now=True)
    hits = models.IntegerField(default=0)
    image = models.ImageField()

1 Ответ

1 голос
/ 02 апреля 2019

Вы можете найти ваши самые дорогие продукты, заказав ваш запрос и нарезав его :

Products.objects.order_by('-price')[:5]

Здесь мы заказываем на price по убыванию, потому чтопрефикса -.Этот запрос должен дать вам пять самых дорогих Product с.Не стесняйтесь включать другие модификаторы, такие как filter(), чтобы получить еще более конкретную информацию, например, чтобы найти самые дорогие Product в какой-либо категории или исключить выбранный основной продукт из списка самых дорогих.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...