django связи таблиц Каталог и Товары
Есть 2 модели, как сделать так что бы выводились только категории в которых есть товары. Сейчас выводятся все категории
class CatalogList(models.Model):
code = models.CharField(primary_key=True, max_length=10)
name = models.TextField()
sortingOrder = models.IntegerField()
class Items(models.Model):
code = models.CharField(primary_key=True, max_length=10)
name = models.TextField()
imageurl = models.TextField()
description = models.TextField()
price = models.DecimalField(max_digits=10, decimal_places=2)
category = models.ForeignKey(CatalogList, on_delete=models.PROTECT, related_name='item_list', db_column='category')
Ответы (1 шт):
Автор решения: Андрей
→ Ссылка
Решение на данный момент
class Catalog():
def list():
catalog_list = []
for Cat in CatalogList.objects.all().order_by('sortingOrder'):
if CatalogList.objects.filter(item_list__category=Cat.code).count() > 0:
catalog_list.append(Cat)
return iter(catalog_list)