Skip to content

Commit fd5202b

Browse files
committed
fix: catching database exceptions
1 parent 867851e commit fd5202b

2 files changed

Lines changed: 16 additions & 10 deletions

File tree

src/services/userService.py

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,15 @@ def all(self, query_params: QueryParams) -> JSONResponse:
4040
def view(self, user_id: int) -> JSONResponse:
4141
user = None
4242

43-
with PgDatabase() as db:
44-
db.cursor.execute(f"SELECT {self.all_columns} FROM {self.table} WHERE id = %s", (user_id,))
45-
row = db.cursor.fetchone()
43+
try:
44+
with PgDatabase() as db:
45+
db.cursor.execute(f"SELECT {self.all_columns} FROM {self.table} WHERE id = %s", (user_id,))
46+
row = db.cursor.fetchone()
4647

47-
if row is None:
48-
return JSONResponse(status_code=404, content={"error": True, "message": "Usuário não encontrado"})
48+
if row is None:
49+
return JSONResponse(status_code=404, content={"error": True, "message": "Usuário não encontrado"})
50+
except Exception:
51+
return JSONResponse(status_code=500, content={"error": True, "message": "Database error"})
4952

5053
user = line_to_dict(row, self.columns)
5154
return JSONResponse(status_code=200, content={"error": False, "data": user})

src/services/userTypeService.py

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,15 @@ def all(self, query_params: QueryParams) -> JSONResponse:
3535
def view(self, user_type_id: int) -> JSONResponse:
3636
user_type = None
3737

38-
with PgDatabase() as db:
39-
db.cursor.execute(f"SELECT id, nome FROM {self.table} WHERE id = %s", (user_type_id,))
40-
row = db.cursor.fetchone()
38+
try:
39+
with PgDatabase() as db:
40+
db.cursor.execute(f"SELECT id, nome FROM {self.table} WHERE id = %s", (user_type_id,))
41+
row = db.cursor.fetchone()
4142

42-
if row is None:
43-
return JSONResponse(status_code=404, content={"error": True, "message": "Tipo de usuário não encontrado"})
43+
if row is None:
44+
return JSONResponse(status_code=404, content={"error": True, "message": "Tipo de usuário não encontrado"})
45+
except Exception:
46+
return JSONResponse(status_code=500, content={"error": True, "message": "Database error"})
4447

4548
user_type = line_to_dict(row, self.columns)
4649
return JSONResponse(status_code=200, content={"error": False, "data": user_type})

0 commit comments

Comments
 (0)