@@ -23,7 +23,7 @@ async def write_post(
2323 current_user : Annotated [UserRead , Depends (get_current_user )],
2424 db : Annotated [AsyncSession , Depends (async_get_db )]
2525):
26- db_user = await crud_users .get (db = db , username = username , is_deleted = False )
26+ db_user = await crud_users .get (db = db , schema_to_select = UserRead , username = username , is_deleted = False )
2727 if db_user is None :
2828 raise HTTPException (status_code = 404 , detail = "User not found" )
2929
@@ -32,6 +32,7 @@ async def write_post(
3232
3333 post_internal_dict = post .model_dump ()
3434 post_internal_dict ["created_by_user_id" ] = db_user .id
35+
3536 post_internal = PostCreateInternal (** post_internal_dict )
3637 return await crud_posts .create (db = db , object = post_internal )
3738
@@ -43,11 +44,11 @@ async def read_posts(
4344 username : str ,
4445 db : Annotated [AsyncSession , Depends (async_get_db )]
4546):
46- db_user = await crud_users .get (db = db , username = username , is_deleted = False )
47+ db_user = await crud_users .get (db = db , schema_to_select = UserRead , username = username , is_deleted = False )
4748 if db_user is None :
4849 raise HTTPException (status_code = 404 , detail = "User not found" )
4950
50- posts = await crud_posts .get_multi (db = db , created_by_user_id = db_user .id , is_deleted = False )
51+ posts = await crud_posts .get_multi (db = db , schema_to_select = PostRead , created_by_user_id = db_user .id , is_deleted = False )
5152 return posts
5253
5354
@@ -59,18 +60,18 @@ async def read_post(
5960 id : int ,
6061 db : Annotated [AsyncSession , Depends (async_get_db )]
6162):
62- db_user = await crud_users .get (db = db , username = username , is_deleted = False )
63+ db_user = await crud_users .get (db = db , schema_to_select = UserRead , username = username , is_deleted = False )
6364 if db_user is None :
6465 raise HTTPException (status_code = 404 , detail = "User not found" )
6566
66- db_post = await crud_posts .get (db = db , id = id , created_by_user_id = db_user .id , is_deleted = False )
67+ db_post = await crud_posts .get (db = db , schema_to_select = PostRead , id = id , created_by_user_id = db_user .id , is_deleted = False )
6768 if db_post is None :
6869 raise HTTPException (status_code = 404 , detail = "Post not found" )
6970
7071 return db_post
7172
7273
73- @router .patch ("/{username}/post/{id}" , response_model = PostRead )
74+ @router .patch ("/{username}/post/{id}" )
7475@cache (
7576 "{username}_post_cache" ,
7677 resource_id_name = "id" ,
@@ -84,18 +85,19 @@ async def patch_post(
8485 current_user : Annotated [UserRead , Depends (get_current_user )],
8586 db : Annotated [AsyncSession , Depends (async_get_db )]
8687):
87- db_user = await crud_users .get (db = db , username = username , is_deleted = False )
88+ db_user = await crud_users .get (db = db , schema_to_select = UserRead , username = username , is_deleted = False )
8889 if db_user is None :
8990 raise HTTPException (status_code = 404 , detail = "User not found" )
9091
9192 if current_user .id != db_user .id :
9293 raise privileges_exception
9394
94- db_post = await crud_posts .get (db = db , id = id , is_deleted = False )
95+ db_post = await crud_posts .get (db = db , schema_to_select = PostRead , id = id , is_deleted = False )
9596 if db_post is None :
9697 raise HTTPException (status_code = 404 , detail = "Post not found" )
9798
98- return await crud_posts .update (db = db , object = values , db_object = db_post , id = id )
99+ await crud_posts .update (db = db , object = values , id = id )
100+ return {"message" : "Post updated" }
99101
100102
101103@router .delete ("/{username}/post/{id}" )
@@ -111,24 +113,20 @@ async def erase_post(
111113 current_user : Annotated [UserRead , Depends (get_current_user )],
112114 db : Annotated [AsyncSession , Depends (async_get_db )]
113115):
114- db_user = await crud_users .get (db = db , username = username , is_deleted = False )
116+ db_user = await crud_users .get (db = db , schema_to_select = UserRead , username = username , is_deleted = False )
115117 if db_user is None :
116118 raise HTTPException (status_code = 404 , detail = "User not found" )
117119
118120 if current_user .id != db_user .id :
119121 raise privileges_exception
120122
121- db_post = await crud_posts .get (db = db , id = id , is_deleted = False )
123+ db_post = await crud_posts .get (db = db , schema_to_select = PostRead , id = id , is_deleted = False )
122124 if db_post is None :
123125 raise HTTPException (status_code = 404 , detail = "Post not found" )
124126
125- deleted_post = await crud_posts .delete (db = db , db_object = db_post , id = id )
126- if deleted_post .is_deleted == True :
127- message = {"message" : "Post deleted" }
128- else :
129- message = {"message" : "Something went wrong" }
130-
131- return message
127+ await crud_posts .delete (db = db , db_row = db_post , id = id )
128+
129+ return {"message" : "Post deleted" }
132130
133131
134132@router .delete ("/{username}/db_post/{id}" , dependencies = [Depends (get_current_superuser )])
@@ -143,20 +141,13 @@ async def erase_db_post(
143141 id : int ,
144142 db : Annotated [AsyncSession , Depends (async_get_db )]
145143):
146- db_user = await crud_users .get (db = db , username = username , is_deleted = False )
144+ db_user = await crud_users .get (db = db , schema_to_select = UserRead , username = username , is_deleted = False )
147145 if db_user is None :
148146 raise HTTPException (status_code = 404 , detail = "User not found" )
149147
150- db_post = await crud_posts .get (db = db , id = id , is_deleted = False )
148+ db_post = await crud_posts .get (db = db , schema_to_select = PostRead , id = id , is_deleted = False )
151149 if db_post is None :
152150 raise HTTPException (status_code = 404 , detail = "Post not found" )
153151
154152 await crud_posts .db_delete (db = db , db_object = db_post , id = id )
155- deleted_post = await crud_posts .get (db = db , id = id )
156-
157- if deleted_post is None :
158- message = {"message" : "Post deleted" }
159- else :
160- message = {"message" : "Something went wrong" }
161-
162- return message
153+ return {"message" : "Post deleted from the database" }
0 commit comments