From fd71bdd12599ae41f5ad034d1f3eaccd74449313 Mon Sep 17 00:00:00 2001 From: sauravniraula Date: Tue, 22 Jul 2025 16:44:19 +0545 Subject: [PATCH] perf(fastapi): removes multiple database write in single endpoint --- servers/fastapi/api/v1/ppt/endpoints/presentation.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/servers/fastapi/api/v1/ppt/endpoints/presentation.py b/servers/fastapi/api/v1/ppt/endpoints/presentation.py index 758a8f40..36ba523c 100644 --- a/servers/fastapi/api/v1/ppt/endpoints/presentation.py +++ b/servers/fastapi/api/v1/ppt/endpoints/presentation.py @@ -134,11 +134,6 @@ async def prepare_presentation( with get_sql_session() as sql_session: presentation = sql_session.get(PresentationModel, presentation_id) - presentation.outlines = [each.model_dump() for each in outlines] - presentation.title = title or presentation.title - presentation.layout = layout.model_dump() - sql_session.commit() - sql_session.refresh(presentation) total_slide_layouts = len(layout.slides) total_outlines = len(outlines) @@ -164,6 +159,9 @@ async def prepare_presentation( with get_sql_session() as sql_session: sql_session.add(presentation) + presentation.outlines = [each.model_dump() for each in outlines] + presentation.title = title or presentation.title + presentation.set_layout(layout) presentation.set_structure(presentation_structure) sql_session.commit() sql_session.refresh(presentation)