add sign-up endpoint callback

This commit is contained in:
Timur Kh.
2025-03-01 00:19:19 +03:00
parent 8c61cdbf0f
commit bbcecd7fb6
2 changed files with 11 additions and 6 deletions
@@ -22,6 +22,6 @@ class BearerAuth(HttpBearer):
def generate_jwt(user: User) -> str: def generate_jwt(user: User) -> str:
data = { data = {
"exp": (datetime.datetime.now() + datetime.timedelta(days=365)).timestamp(), "exp": (datetime.datetime.now() + datetime.timedelta(days=365)).timestamp(),
"id": user.id "id": str(user.id)
} }
return jwt.encode(data, settings.SECRET_KEY, algorithm="HS256") return jwt.encode(data, settings.SECRET_KEY, algorithm="HS256")
+10 -5
View File
@@ -1,10 +1,10 @@
from ninja import Router from ninja import Router
from api.v1.users.schemas import LoginSchema, RegisterSchema, TokenSchema, UserSchema from api.v1.users.schemas import LoginSchema, RegisterSchema, TokenSchema, UserSchema
from api.v1.auth import BearerAuth
from api.v1.schemas import BadRequestError, ForbiddenError, NotFoundError from api.v1.schemas import BadRequestError, ForbiddenError, NotFoundError
from apps.users.models import User from apps.users.models import User
router = Router(tags=["users"]) router = Router(tags=["users"])
@@ -15,8 +15,13 @@ router = Router(tags=["users"])
400: BadRequestError, 400: BadRequestError,
} }
) )
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 201, TokenSchema(token=token)
@router.post( @router.post(
@@ -27,7 +32,7 @@ def sign_up(data: RegisterSchema):
403: ForbiddenError, 403: ForbiddenError,
} }
) )
def sign_in(data: LoginSchema): def sign_in(request, data: LoginSchema):
... ...
@@ -39,5 +44,5 @@ def sign_in(data: LoginSchema):
404: NotFoundError, 404: NotFoundError,
} }
) )
def get_user(user_id: str): def get_user(request, user_id: str):
... ...