Задать вопрос
@s7fkcu

Django filter. Есть ли пример или как правильно реализовать, вывод фильтров, только тех, которые привязаны к товарам и фильтровать по get?

Добрый вечер. Есть ли готовые примеры вывода фильтров, к примеру (атрибуты и их категории) в списке товаров и выводить только те, которые привязаны к товаром.
Size (категория атрибута): xs, s
Color (категория атрибута): blue, green
Спасибо.
  • Вопрос задан
  • 1689 просмотров
Подписаться 2 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
@kratorr
Ответ написан
Комментировать
@s7fkcu Автор вопроса
И все же есть ли примеры использование django_filter, не могу понять информацию по ссылке, точнее как она мне поможет.
# models.py Category
class Category(MPTTModel):
    parent = TreeForeignKey('self', verbose_name="Категория", blank=True, null=True, related_name='children_category',
                            help_text=_('parent category if exist'), on_delete=models.CASCADE)


# models.py Product
class Product(models.Model):
    category = models.ForeignKey(Category, verbose_name="Категория", related_name='product_category',
                                 on_delete=models.CASCADE, null=True, blank=True)

    #attribute = models.ManyToManyField('Attribute', verbose_name=_('attribute'), related_name='product_attr',
     #                                 blank=True)

# Attribute
class CategoryAttribute(models.Model):
    title = models.CharField(max_length=500, verbose_name=_('title'))
    text = models.TextField(max_length=1000, verbose_name=_('text'), blank=True)

class Attribute(models.Model):
    # product = models.ForeignKey(Product, verbose_name=_('product'), related_name='product_attr',
    #                             on_delete=models.CASCADE, null=True, blank=True)
    category = models.ForeignKey('CategoryAttribute', verbose_name='Категория аттрибута', on_delete=models.CASCADE)

Как будет правильно, настроить связи между моделями CategoryAttribute, Attribute и Product. Буду благодарен!
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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