Add support for "bulk-delete" of Person table

This commit is contained in:
Lance Edgar 2020-03-16 17:47:06 -05:00
parent 7994c7d770
commit 907a356bea
2 changed files with 27 additions and 3 deletions

View file

@ -1855,7 +1855,7 @@ class MasterView(View):
def bulk_delete_objects(self, session, objects, progress=None):
def delete(obj, i):
session.delete(obj)
self.delete_instance(obj)
if i % 1000 == 0:
session.flush()
@ -3142,10 +3142,14 @@ class MasterView(View):
"""
Delete the instance, or mark it as deleted, or whatever you need to do.
"""
# note, we don't use self.Session here, in case we're being called from
# a separate (bulk-delete) thread
session = orm.object_session(instance)
session.delete(instance)
# Flush immediately to force any pending integrity errors etc.; that
# way we don't set flash message until we know we have success.
self.Session.delete(instance)
self.Session.flush()
session.flush()
def get_after_delete_url(self, instance):
"""