From ed68fa2b57f7f4cf916fd2e40312e1f64da2c71e Mon Sep 17 00:00:00 2001 From: Kevin Morris Date: Sun, 19 Sep 2021 19:27:03 -0700 Subject: [PATCH] feat(FastAPI): add aurweb.db.delete_all(iterable) Signed-off-by: Kevin Morris --- aurweb/db.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/aurweb/db.py b/aurweb/db.py index 2b934300..c1e80751 100644 --- a/aurweb/db.py +++ b/aurweb/db.py @@ -2,6 +2,8 @@ import functools import math import re +from typing import Iterable + from sqlalchemy import event from sqlalchemy.orm import scoped_session @@ -71,6 +73,12 @@ def delete(model, *args, **kwargs): session.delete(record) +def delete_all(iterable: Iterable): + with begin(): + for obj in iterable: + session.delete(obj) + + def rollback(): session.rollback()