We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
2 parents 7b0afb6 + 6f2fe78 commit 8619910Copy full SHA for 8619910
fractal_server/app/api/v1/task.py
@@ -7,6 +7,7 @@
7
8
from fastapi import APIRouter
9
from fastapi import Depends
10
+from fastapi import HTTPException
11
from fastapi import status
12
from sqlalchemy.exc import IntegrityError
13
from sqlmodel import select
@@ -96,9 +97,16 @@ async def create_task(
96
97
db: AsyncSession = Depends(get_db),
98
):
99
db_task = Task.from_orm(task)
- db.add(db_task)
100
- await db.commit()
101
- await db.refresh(db_task)
+ try:
+ db.add(db_task)
102
+ await db.commit()
103
+ await db.refresh(db_task)
104
+ except IntegrityError as e:
105
+ await db.rollback()
106
+ raise HTTPException(
107
+ status_code=status.HTTP_422_UNPROCESSABLE_ENTITY,
108
+ detail=str(e),
109
+ )
110
return db_task
111
112
0 commit comments