new way of handling category searches

This commit is contained in:
Sam
2021-03-19 10:53:49 +00:00
parent 2673aa51aa
commit 23109cfb39
3 changed files with 19 additions and 5 deletions

View File

@@ -10,7 +10,7 @@ from django.utils import timezone
import requests
from products.models import Product
from products.models import Product, CategoryTag
from companies.models import Company
from history.models import HistorySync
from PIL import Image
@@ -144,7 +144,15 @@ def ranked_product_search(keyword, shipping_cost=None, discount=None, categories
# filter by category
if categories is not None:
products_qs = products_qs.filter(category__name__in=categories)
# products_qs = products_qs.filter(category__name__in=categories)
descendants = []
for entry in categories:
cat = CategoryTag.objects.filter(label__iexact=entry).first()
# append category tag, and children
descendants.append(cat)
descendants.extend(cat.children.all())
products_qs = products_qs.filter(category__in=descendants)
# filter by tags
if tags is not None: