mirror of
https://gitlab.com/megazordpobeda/DataRush.git
synced 2026-05-23 17:57:10 +00:00
add swagger docs to signin and signup endooints
This commit is contained in:
@@ -4,6 +4,7 @@ from ninja import NinjaAPI
|
||||
|
||||
from api.v1 import handlers
|
||||
from api.v1.ping.views import router as ping_router
|
||||
from api.v1.users.views import router as users_router
|
||||
|
||||
router = NinjaAPI(
|
||||
title="project_name API",
|
||||
@@ -17,6 +18,10 @@ router.add_router(
|
||||
"ping",
|
||||
ping_router,
|
||||
)
|
||||
router.add_router(
|
||||
"",
|
||||
users_router,
|
||||
)
|
||||
|
||||
|
||||
for exception, handler in handlers.exception_handlers:
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
from ninja import Schema, ModelSchema
|
||||
|
||||
|
||||
from apps.users.models import User
|
||||
|
||||
|
||||
class TokenSchema(Schema):
|
||||
token: str
|
||||
|
||||
|
||||
class RegisterSchema(ModelSchema):
|
||||
class Meta:
|
||||
model = User
|
||||
fields = ["email", "username", "password"]
|
||||
|
||||
|
||||
class LoginSchema(ModelSchema):
|
||||
class Meta:
|
||||
model = User
|
||||
fields = ["email", "password"]
|
||||
@@ -0,0 +1,31 @@
|
||||
from ninja import Router
|
||||
|
||||
from api.v1.users.schemas import LoginSchema, RegisterSchema, TokenSchema
|
||||
from api.v1.schemas import BadRequestError, ForbiddenError
|
||||
from apps.users.models import User
|
||||
|
||||
|
||||
router = Router(tags=["users"])
|
||||
|
||||
|
||||
@router.post(
|
||||
path="/sign-up",
|
||||
response={
|
||||
201: TokenSchema,
|
||||
400: BadRequestError,
|
||||
}
|
||||
)
|
||||
def sign_up(data: RegisterSchema):
|
||||
...
|
||||
|
||||
|
||||
@router.post(
|
||||
path="/sign-in",
|
||||
response={
|
||||
200: TokenSchema,
|
||||
400: BadRequestError,
|
||||
403: ForbiddenError,
|
||||
}
|
||||
)
|
||||
def sign_in(data: LoginSchema):
|
||||
...
|
||||
Reference in New Issue
Block a user