diff --git a/invokeai/app/api/routers/boards.py b/invokeai/app/api/routers/boards.py index 310f45b739..94d8667ae4 100644 --- a/invokeai/app/api/routers/boards.py +++ b/invokeai/app/api/routers/boards.py @@ -5,6 +5,7 @@ from invokeai.app.services.board_record_storage import BoardChanges from invokeai.app.services.image_record_storage import OffsetPaginatedResults from invokeai.app.services.models.board_record import BoardDTO + from ..dependencies import ApiDependencies boards_router = APIRouter(prefix="/v1/boards", tags=["boards"]) @@ -71,17 +72,17 @@ async def update_board( @boards_router.delete("/{board_id}", operation_id="delete_board") async def delete_board( board_id: str = Path(description="The id of board to delete"), - include_images: bool = Path( + include_images: Optional[bool] = Query( description="Permanently delete all images on the board", default=False ), ) -> None: """Deletes a board""" - try: - if include_images: + if include_images is True: ApiDependencies.invoker.services.images.delete_images_on_board( board_id=board_id ) + ApiDependencies.invoker.services.boards.delete(board_id=board_id) else: ApiDependencies.invoker.services.boards.delete(board_id=board_id) except Exception as e: diff --git a/invokeai/app/services/image_record_storage.py b/invokeai/app/services/image_record_storage.py index 3bf931e852..066e6f8d5f 100644 --- a/invokeai/app/services/image_record_storage.py +++ b/invokeai/app/services/image_record_storage.py @@ -397,10 +397,10 @@ class SqliteImageRecordStorage(ImageRecordStorageBase): self._lock.acquire() # Construct the SQLite query with the placeholders - query = f"DELETE FROM images WHERE id_column IN ({placeholders})" + query = f"DELETE FROM images WHERE image_name IN ({placeholders})" # Execute the query with the list of IDs as parameters - self._cursor.execute(query, placeholders) + self._cursor.execute(query, image_names) self._conn.commit() except sqlite3.Error as e: