File tree Expand file tree Collapse file tree 1 file changed +6
-5
lines changed Expand file tree Collapse file tree 1 file changed +6
-5
lines changed <
8000
th scope="col">Original file line numberDiff line number Diff line change 13
13
14
14
15
15
@router .get ("/" , response_model = UserSchema )
16
- async def get_user (data = Depends (get_data )):
17
- return data .get ("user" )
16
+ async def get_user (data = Depends (get_data ), db : DB = Depends (database_dependency )):
17
+ user : User = await db .first (select (User ).filter_by (id = data ["user" ]["id" ]))
18
+ return UserSchema (** {"id" : user .id , "username" : user .username })
18
19
19
20
20
21
@router .put ("/" , response_model = UserSchema )
21
22
async def update_user (updated_user : UpdateUser , data = Depends (get_data ), db : DB = Depends (database_dependency )):
22
- if await db .exists (select (User ).filter_by (username = updated_user .username )):
23
- raise HTTPException (409 , "Username already used" )
24
23
user : User = await db .first (select (User ).filter_by (id = data ["user" ]["id" ]))
25
24
if user .username == updated_user .username :
26
25
updated_user .username = None
27
- else :
26
+ elif updated_user . username :
28
27
if not RE_USERNAME .match (updated_user .username ):
29
28
raise HTTPException (400 , "Username doesn't match Regex" )
29
+ if await db .exists (select (User ).filter_by (username = updated_user .username )):
30
+ raise HTTPException (409 , "Username already used" )
30
31
if not updated_user .username and not updated_user .password :
31
32
raise HTTPException (400 , "Nothing Changed" )
32
33
if not user :
You can’t perform that action at this time.
0 commit comments