From d86c008baed860fd47b605813f121aba33ff3e82 Mon Sep 17 00:00:00 2001 From: Max Yakovenko Date: Wed, 1 Aug 2018 08:19:52 +0300 Subject: [PATCH] add clean db script into core app --- core/management/commands/clean_deleted.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 core/management/commands/clean_deleted.py diff --git a/core/management/commands/clean_deleted.py b/core/management/commands/clean_deleted.py new file mode 100644 index 0000000..f67e4c4 --- /dev/null +++ b/core/management/commands/clean_deleted.py @@ -0,0 +1,18 @@ +from django.core.management.base import BaseCommand, CommandError +import django.apps + +from core.models import AbstractStatusModel + + +class Command(BaseCommand): + help = 'Clean deleted models' + + def handle(self, *args, **options): + for model in django.apps.apps.get_models(): + if issubclass(model, AbstractStatusModel): + data = model.deleted.all() + if data: + for obj in data: + obj.delete_from_base() + + self.stdout.write(self.style.SUCCESS('Successfully deleted %s %s' % (len(data), model))) \ No newline at end of file