""" Find deletable of objects"""
from django.conf import settings
from django.db.utils import ConnectionRouter
from django.contrib.admin.util import get_deleted_objects
from django.contrib.auth.models import User
from django.contrib.admin import AdminSite
def find_deletable_objects(queryset):
""" Get a full list of deletable objects. """
router = ConnectionRouter(settings.DATABASE_ROUTERS)
modeladmin = AccountAdmin
modeladmin.model = Account
modeladmin.admin_site = AdminSite()
using = router.db_for_write(modeladmin.model)
opts = modeladmin.model._meta
user = User.objects.get_or_create(id=1) # superuser
deletable_objects, perms_needed, protected = get_deleted_objects(
queryset, opts, user, modeladmin.admin_site, using)
from pprint import pprint
pprint(deletable_objects)
Comments