From 8f5fd2582cd626c73546a1ce0d33c29eb65ca455 Mon Sep 17 00:00:00 2001 From: Egor fureunoir Gorbunov Date: Sat, 5 Jul 2025 01:48:58 +0300 Subject: [PATCH] Features: 1) Add deletion of related AttributeValue and ProductImage records when deleting never ordered products. Fixes: None; Extra: Remove redundant blank line for cleanup. --- core/management/commands/delete_never_ordered_products.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/core/management/commands/delete_never_ordered_products.py b/core/management/commands/delete_never_ordered_products.py index 885eddb3..c8bd762e 100644 --- a/core/management/commands/delete_never_ordered_products.py +++ b/core/management/commands/delete_never_ordered_products.py @@ -1,11 +1,10 @@ from django.core.management.base import BaseCommand from django.db import transaction -from core.models import Product +from core.models import AttributeValue, Product, ProductImage CHUNK_SIZE = 5000 - class Command(BaseCommand): help = "Delete Product rows with no OrderProduct, in batches" @@ -17,6 +16,8 @@ class Command(BaseCommand): if not batch_ids: break with transaction.atomic(): + AttributeValue.objects.filter(product_id__in=batch_ids).delete() + ProductImage.objects.filter(product_id__in=batch_ids).delete() Product.objects.filter(pk__in=batch_ids).delete() self.stdout.write(f"Deleted {len(batch_ids)} products…")