Я буду рад помочь вам в этом. Вот несколько методов, которые вы можете использовать с примерами кода для данной модели Django:
Метод 1. Создайте новый продукт
subcategory = SubCategory.objects.get(id=subcategory_id)
product = Product(category=subcategory)
product.save()
Метод 2. Получите категорию товара
product = Product.objects.get(id=product_id)
category = product.category
Метод 3. Обновите категорию товара
product = Product.objects.get(id=product_id)
new_category = SubCategory.objects.get(id=new_category_id)
product.category = new_category
product.save()
Метод 4. Удаление категории товара
product = Product.objects.get(id=product_id)
product.category = None
product.save()
Метод 5. Получите все товары определенной категории
category = SubCategory.objects.get(id=category_id)
products = Product.objects.filter(category=category)
Метод 6. Получите название категории продукта
product = Product.objects.get(id=product_id)
category_name = product.category.name
Метод 7. Получите количество товаров в каждой категории
from django.db.models import Count
categories_with_count = Product.objects.values('category__name').annotate(count=Count('id'))
Метод 8. Получите количество товаров для определенной категории
category = SubCategory.objects.get(id=category_id)
product_count = Product.objects.filter(category=category).count()
Метод 9. Получите количество товаров для каждой подкатегории
from django.db.models import Count
subcategories_with_count = Product.objects.values('category__name', 'category__subcategory__name').annotate(count=Count('id'))
Метод 10. Фильтрация товаров по названию категории
products = Product.objects.filter(category__name='category_name')