register works!

This commit is contained in:
2024-03-30 13:34:50 +03:00
parent 191a7b5f30
commit cb6ceae42d
5 changed files with 27 additions and 19 deletions

View File

@ -43,22 +43,23 @@ async def login_for_access_token(
@router.post("/register")
async def register(
user_data: Annotated[schemas.UserRegister, Depends()],
user_data: schemas.UserRegister,
db: Annotated[Session, Depends(get_db)],
) -> schemas.User:
user = services.get_user_by_username(db, user_data.username)
if user:
raise HTTPException(
status_code=status.HTTP_401_UNAUTHORIZED,
status_code=status.HTTP_400_BAD_REQUEST,
detail="User with this username already exists",
headers={"WWW-Authenticate": "Bearer"},
)
user = services.create_user(
db=db,
username=user_data.username,
plain_password=user_data.password,
name=user_data.name,
)
if user_data.password != user_data.password2:
raise HTTPException(
status_code=status.HTTP_400_BAD_REQUEST,
detail="Passwords do not match",
headers={"WWW-Authenticate": "Bearer"},
)
user = services.create_user(db=db, user_data=user_data)
return user