docs fix
This commit is contained in:
@@ -50,18 +50,41 @@ class UserResponseSerializer(serializers.Serializer):
|
|||||||
|
|
||||||
class LoginRequestSerializer(serializers.Serializer):
|
class LoginRequestSerializer(serializers.Serializer):
|
||||||
"""Сериализатор для запроса авторизации"""
|
"""Сериализатор для запроса авторизации"""
|
||||||
login = serializers.CharField(help_text="Логин пользователя")
|
login = serializers.CharField(
|
||||||
password = serializers.CharField(help_text="Пароль пользователя", write_only=True)
|
help_text="Логин пользователя",
|
||||||
|
required=True
|
||||||
|
)
|
||||||
|
password = serializers.CharField(
|
||||||
|
help_text="Пароль пользователя",
|
||||||
|
write_only=True,
|
||||||
|
required=True,
|
||||||
|
style={'input_type': 'password'}
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class LoginResponseSerializer(serializers.Serializer):
|
class LoginResponseSerializer(serializers.Serializer):
|
||||||
"""Сериализатор для ответа при успешной авторизации"""
|
"""Сериализатор для ответа при успешной авторизации"""
|
||||||
message = serializers.CharField()
|
message = serializers.CharField(
|
||||||
access = serializers.CharField()
|
help_text="Сообщение о успешной авторизации",
|
||||||
refresh = serializers.CharField()
|
read_only=True
|
||||||
user = UserResponseSerializer()
|
)
|
||||||
|
access = serializers.CharField(
|
||||||
|
help_text="JWT access token для авторизации запросов",
|
||||||
|
read_only=True
|
||||||
|
)
|
||||||
|
refresh = serializers.CharField(
|
||||||
|
help_text="JWT refresh token для обновления access token",
|
||||||
|
read_only=True
|
||||||
|
)
|
||||||
|
user = UserResponseSerializer(
|
||||||
|
help_text="Данные авторизованного пользователя",
|
||||||
|
read_only=True
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class LogoutResponseSerializer(serializers.Serializer):
|
class LogoutResponseSerializer(serializers.Serializer):
|
||||||
"""Сериализатор для ответа при выходе из системы"""
|
"""Сериализатор для ответа при выходе из системы"""
|
||||||
message = serializers.CharField()
|
message = serializers.CharField(
|
||||||
|
help_text="Сообщение о успешном выходе",
|
||||||
|
read_only=True
|
||||||
|
)
|
||||||
@@ -26,7 +26,6 @@ class LoginViewSet(AuthBaseViewSet):
|
|||||||
@extend_schema(
|
@extend_schema(
|
||||||
summary="Авторизация пользователя",
|
summary="Авторизация пользователя",
|
||||||
description="Эндпоинт для авторизации пользователя по логину и паролю",
|
description="Эндпоинт для авторизации пользователя по логину и паролю",
|
||||||
request=LoginRequestSerializer,
|
|
||||||
responses={
|
responses={
|
||||||
200: OpenApiResponse(
|
200: OpenApiResponse(
|
||||||
response=LoginResponseSerializer,
|
response=LoginResponseSerializer,
|
||||||
|
|||||||
@@ -70,14 +70,28 @@ INSTALLED_APPS = [
|
|||||||
'drf_spectacular',
|
'drf_spectacular',
|
||||||
]
|
]
|
||||||
|
|
||||||
# Настройки OpenAPI
|
#!OpenAPI
|
||||||
SPECTACULAR_SETTINGS = {
|
SPECTACULAR_SETTINGS = {
|
||||||
'TITLE': 'AERBIM API',
|
'TITLE': 'AERBIM API',
|
||||||
'DESCRIPTION': 'AERBIM - документация по API',
|
'DESCRIPTION': 'AERBIM - документация по API',
|
||||||
'VERSION': '1.0.0',
|
'VERSION': '1.0.0',
|
||||||
'SERVE_INCLUDE_SCHEMA': False,
|
'SERVE_INCLUDE_SCHEMA': False,
|
||||||
'COMPONENT_SPLIT_REQUEST': True,
|
|
||||||
'SCHEMA_PATH_PREFIX': '/api/v[0-9]',
|
'SCHEMA_PATH_PREFIX': '/api/v[0-9]',
|
||||||
|
'COMPONENT_SPLIT_REQUEST': False, # не создавать автоматически *Request схемы
|
||||||
|
|
||||||
|
'COMPONENT_NO_READ_ONLY_REQUIRED': True, # не требовать read_only поля
|
||||||
|
'COMPONENT_SPLIT_PATCHES': False, # не создавать отдельные схемы для PATCH
|
||||||
|
|
||||||
|
# настройки безопасности
|
||||||
|
'SECURITY': [{'Bearer': []}],
|
||||||
|
'SWAGGER_UI_SETTINGS': {
|
||||||
|
'persistAuthorization': True,
|
||||||
|
},
|
||||||
|
|
||||||
|
# сортировка тегов и операций
|
||||||
|
'TAGS': [
|
||||||
|
{'name': 'Аутентификация', 'description': 'Методы для работы с аутентификацией'},
|
||||||
|
],
|
||||||
}
|
}
|
||||||
|
|
||||||
MIDDLEWARE = [
|
MIDDLEWARE = [
|
||||||
|
|||||||
Reference in New Issue
Block a user