Merge remote-tracking branch 'origin/master'

# Conflicts:
#	services/backend/api/v1/auth.py
#	services/backend/api/v1/router.py
#	services/backend/api/v1/user/schemas.py
#	services/backend/api/v1/user/views.py
#	services/backend/apps/user/apps.py
#	services/backend/config/settings.py
This commit is contained in:
Андрей Сумин
2025-03-01 01:17:13 +03:00
31 changed files with 116 additions and 15462 deletions
+35 -18
View File
@@ -1,12 +1,12 @@
from ninja import Router
from http import HTTPStatus as status
from ninja import Router
from ninja.errors import AuthenticationError
from api.v1.user.schemas import LoginSchema, RegisterSchema, TokenSchema, UserSchema
from api.v1.auth import BearerAuth
from api.v1.schemas import BadRequestError, ForbiddenError, NotFoundError
from api.v1.user.schemas import (
LoginSchema,
RegisterSchema,
TokenSchema,
UserSchema,
)
from apps.user.models import User
router = Router(tags=["user"])
@@ -14,30 +14,47 @@ router = Router(tags=["user"])
@router.post(
path="/sign-up",
response={
201: TokenSchema,
400: BadRequestError,
status.CREATED: TokenSchema,
status.BAD_REQUEST: BadRequestError,
},
auth=None,
)
def sign_up(data: RegisterSchema): ...
def sign_up(request, data: RegisterSchema):
user = User(**data.dict())
user.full_clean()
user.save()
token = BearerAuth.generate_jwt(user)
return status.CREATED, TokenSchema(token=token)
@router.post(
path="/sign-in",
response={
200: TokenSchema,
400: BadRequestError,
403: ForbiddenError,
status.OK: TokenSchema,
status.BAD_REQUEST: BadRequestError,
status.UNAUTHORIZED: ForbiddenError,
},
auth=None,
)
def sign_in(data: LoginSchema): ...
def sign_in(request, data: LoginSchema):
user = User.objects.filter(email=data.email).first()
if not user:
raise AuthenticationError
if user.password != data.password:
raise AuthenticationError
token = BearerAuth.generate_jwt(user)
return status.OK, TokenSchema(token=token)
@router.get(
path="/user/{user_id}",
response={
200: UserSchema,
400: BadRequestError,
404: NotFoundError,
status.OK: UserSchema,
status.BAD_REQUEST: BadRequestError,
status.NOT_FOUND: NotFoundError,
},
)
def get_user(user_id: str): ...
def get_user(request, user_id: str):
...