pydantic validation in service
This commit is contained in:
@@ -11,7 +11,7 @@ class UsersRepo(BaseRepo):
|
|||||||
stmt = (
|
stmt = (
|
||||||
update(self.model)
|
update(self.model)
|
||||||
.where(self.model.id == id)
|
.where(self.model.id == id)
|
||||||
.values(data.model_dump(exclude_unset=True))
|
.values(data)
|
||||||
.returning(self.model)
|
.returning(self.model)
|
||||||
)
|
)
|
||||||
result = await self.session.execute(stmt)
|
result = await self.session.execute(stmt)
|
||||||
|
|||||||
@@ -33,6 +33,6 @@ class UserService(BaseService):
|
|||||||
|
|
||||||
async def update_user(self, id: int, update_data: UserUpdate) -> User:
|
async def update_user(self, id: int, update_data: UserUpdate) -> User:
|
||||||
await self.get_user_by_filter_or_raise(id=id)
|
await self.get_user_by_filter_or_raise(id=id)
|
||||||
user = await self.session.user.update_one(id=id, data=update_data)
|
user = await self.session.user.update_one(id=id, data=update_data.model_dump(exclude_unset=True))
|
||||||
await self.session.commit()
|
await self.session.commit()
|
||||||
return User.model_validate(user)
|
return User.model_validate(user)
|
||||||
|
|||||||
Reference in New Issue
Block a user