From 2c57c9cdc9bb14ee978a98278e995abb282d115c Mon Sep 17 00:00:00 2001 From: Zvonimir Rudinski Date: Sun, 16 Nov 2025 17:00:40 +0100 Subject: [PATCH] handle already existing users --- database.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/database.py b/database.py index 9de338a..bd03e76 100644 --- a/database.py +++ b/database.py @@ -49,11 +49,17 @@ def close() -> None: def register(user: User) -> None: """Registers a new user in the database.""" - cursor.execute( - "INSERT INTO users (name, password) VALUES (?, ?)", - (user.name, - security.hash_password(user.password))) - connection.commit() + try: + cursor.execute( + "INSERT INTO users (name, password) VALUES (?, ?)", + (user.name, + security.hash_password(user.password))) + connection.commit() + except sqlite3.IntegrityError: + raise HTTPException( + status_code=status.HTTP_400_BAD_REQUEST, + detail="User already exists" + ) def get_user_by_token(request: Request) -> User: