Fixed some issues with register v0.0.4

This commit is contained in:
TropiiDev 2025-04-22 22:19:49 -04:00
parent 66d721d8ed
commit f5267e545e
2 changed files with 13 additions and 6 deletions

9
api.py
View File

@ -26,9 +26,12 @@ async def root():
@app.post("/user/create", response_model=UserPublic)
def create_user(user: UserCreate, session: SessionDep):
salt = random.randint(00000, 99999)
existing_user = session.query(User).filter(User.email == user.email).first()
if existing_user:
raise HTTPException(status_code=400, detail="Email already registered")
existing_email = session.query(User).filter(User.email == user.email).first()
if existing_email:
return {"detail": "Email already registered"}
existing_username = session.query(User).filter(User.username == user.username).first()
if existing_username:
return {"detail": "Username already registered"}
user.password = hash_password(user.password, salt)
user.salt = salt

View File

@ -36,10 +36,14 @@ class User(UserBase, table=True):
salt: int
tasks: list[Task] | None = Field(default=None, sa_column=Column(JSON))
class UserPublic(UserBase):
id: int
is_active: bool
class UserPublic(BaseModel):
id: int | None = None
name: str | None = None
email: str | None = None
username: str | None = None
is_active: bool | None = None
tasks: list[Task] | None = Field(default=None, sa_column=Column(JSON))
detail : str | None = None
class UserCreate(UserBase):
password: str