подключил регистрацию

This commit is contained in:
Андрей Дувакин 2025-11-29 21:57:41 +05:00
parent 196fe6724d
commit 1929318d55
3 changed files with 24 additions and 1 deletions

View File

@ -89,6 +89,20 @@ async def create_user(
return await register_service.create_user(user)
@users_router.post(
'/register/',
response_model=Optional[UserRead],
summary='Register a new user',
description='Register a new user',
)
async def register_user(
user: UserCreate,
db: AsyncSession = Depends(get_db),
):
register_service = RegisterService(db)
return await register_service.user_register(user)
@users_router.get(
'/role/{role_name}/',
response_model=List[UserRead],

View File

@ -27,7 +27,7 @@ class UserCreate(BaseModel):
birthdate: date
password: str = Field(min_length=8)
repeat_password: str = Field(min_length=8)
role_id: int = Field()
role_id: Optional[int] = Field(default=None)
class UserUpdate(BaseModel):

View File

@ -39,6 +39,14 @@ export const usersApi = createApi({
}),
invalidatesTags: ["user"],
}),
registerUser: builder.mutation({
query: (data) => ({
url: "/users/register/",
method: "POST",
body: data,
}),
invalidatesTags: ["user"],
}),
getUsersByRoleName: builder.query({
query: (roleName) => ({
url: `/users/role/${roleName}/`,
@ -76,6 +84,7 @@ export const {
useUpdateUserMutation,
useUpdateUserPasswordMutation,
useCreateUserMutation,
useRegisterUserMutation,
useGetUsersByRoleNameQuery,
useGetReadedLessonsByCourseQuery,
useSetLessonAsReadedMutation,