Как фильтровать данные в шаблоне django?
у меня есть модель django, в которой я определил категории
CATEGORY_CHOICES = (
('BS', 'Best Selling'),
('TP', 'Trending Product'),
('RP', 'Related Products'),
('NA', 'New Arrival'),
('F', 'Featured'),
('OS', 'on sale'),)
class Item(models.Model):
title = models.CharField(max_length=100)
price = models.FloatField()
discount_price = models.FloatField(blank=True, null=True)
category = models.CharField(choices=CATEGORY_CHOICES, max_length=2)
label = models.CharField(choices=LABEL_CHOICES, max_length=1)
slug = models.SlugField()
description = models.TextField()
image = models.ImageField()
def __str__(self):
return self.title
def get_absolute_url(self):
return reverse("core:product", kwargs={
'slug': self.slug
})
def get_add_to_cart_url(self):
return reverse("core:add-to-cart", kwargs={
'slug': self.slug
})
def get_remove_from_cart_url(self):
return reverse("core:remove-from-cart", kwargs={
'slug': self.slug
})
** на моей главной странице Django есть несколько разделов, основанных на категориях, таких как трендовый продукт, на распродаже, особенный, новые поступления и т.д. ** что я хочу, так это отфильтровать данные на основе этих категорий и показать в соответствующем разделе, и для этого я зарегистрировал шаблон следующим образом:
@register.filter
def in_category(Item, category):
return Item.filter(category=category)
и на моем домашнем шаблоне я пытался использовать этот фильтр следующим образом:
но django говорит, что это ошибка VariableDoesNotExist at / Failed lookup for key [Featured] in
может ли кто-нибудь помочь мне с этим, спасибо заранее.
Вы можете использовать простой цикл for и условие
{% if item.category == "Featured" %}
---------html for featured categ---
{% endif %}
{% if item.category == "onsale" %}
---------html for onsale categ---
{% endif %}
.
.
.
{% endfor %}```