From 779312cd9f58efb42467b12cb83360119adc6513 Mon Sep 17 00:00:00 2001 From: Vegard Bieker Matthey Date: Sat, 6 Jun 2026 01:21:53 +0200 Subject: [PATCH] fix autoflush SA warning --- src/worblehat/cli/main.py | 51 ++++++++++++++++++++------------------- 1 file changed, 26 insertions(+), 25 deletions(-) diff --git a/src/worblehat/cli/main.py b/src/worblehat/cli/main.py index 24fe1d9..78ee975 100644 --- a/src/worblehat/cli/main.py +++ b/src/worblehat/cli/main.py @@ -133,35 +133,36 @@ class WorblehatCli(NumberedCmd): """), ) - print("Please select the bookcase where the item is placed:") - bookcase_selector = InteractiveItemSelector( - cls=Bookcase, - sql_session=self.sql_session, - ) - bookcase_selector.cmdloop() - bookcase = bookcase_selector.result - if bookcase == None: - return + with self.sql_session.no_autoflush: + print("Please select the bookcase where the item is placed:") + bookcase_selector = InteractiveItemSelector( + cls=Bookcase, + sql_session=self.sql_session, + ) + bookcase_selector.cmdloop() + bookcase = bookcase_selector.result + if bookcase == None: + return - bookcase_item.shelf = select_bookcase_shelf(bookcase, self.sql_session) + bookcase_item.shelf = select_bookcase_shelf(bookcase, self.sql_session) - print("Please select the items media type:") - media_type_selector = InteractiveItemSelector( - cls=MediaType, - sql_session=self.sql_session, - default=self.sql_session.scalars( - select(MediaType).where(MediaType.name.ilike("book")), - ).one(), - ) + print("Please select the items media type:") + media_type_selector = InteractiveItemSelector( + cls=MediaType, + sql_session=self.sql_session, + default=self.sql_session.scalars( + select(MediaType).where(MediaType.name.ilike("book")), + ).one(), + ) - media_type_selector.cmdloop() - bookcase_item.media_type = media_type_selector.result - if bookcase_item.media_type == None: - return + media_type_selector.cmdloop() + bookcase_item.media_type = media_type_selector.result + if bookcase_item.media_type == None: + return - username = input("Who owns this book? [PVV]> ") - if username != "": - bookcase_item.owner = username + username = input("Who owns this book? [PVV]> ") + if username != "": + bookcase_item.owner = username self.sql_session.add(bookcase_item) self.sql_session.flush()