core/utils: response folder va response mixin qoshildi
This commit is contained in:
@@ -2,4 +2,3 @@ from .djangorestframework import *
|
|||||||
from .simple_jwt import *
|
from .simple_jwt import *
|
||||||
from .jazzmin import *
|
from .jazzmin import *
|
||||||
from .cors_headers import *
|
from .cors_headers import *
|
||||||
from .redis import *
|
|
||||||
|
|||||||
@@ -19,8 +19,8 @@ schema_view = get_schema_view(
|
|||||||
contact=openapi.Contact(email="xoliqberdiyevbehruz12@gmail.com"),
|
contact=openapi.Contact(email="xoliqberdiyevbehruz12@gmail.com"),
|
||||||
license=openapi.License(name="Behruz's-Organization License"),
|
license=openapi.License(name="Behruz's-Organization License"),
|
||||||
),
|
),
|
||||||
public=False,
|
public=True,
|
||||||
permission_classes=(permissions.IsAdminUser,),
|
permission_classes=(permissions.AllowAny,),
|
||||||
)
|
)
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
|
|||||||
0
core/utils/__init__.py
Normal file
0
core/utils/__init__.py
Normal file
0
core/utils/response/__int__.py
Normal file
0
core/utils/response/__int__.py
Normal file
124
core/utils/response/mixin.py
Normal file
124
core/utils/response/mixin.py
Normal file
@@ -0,0 +1,124 @@
|
|||||||
|
# rest framework
|
||||||
|
from rest_framework.response import Response
|
||||||
|
from rest_framework import status
|
||||||
|
|
||||||
|
|
||||||
|
class ResponseMixin:
|
||||||
|
SUCCESS = "success" # 200
|
||||||
|
FAILURE = "failure" # 400
|
||||||
|
ERROR = "error" # 500
|
||||||
|
NOT_FOUND = "not_found" # 404
|
||||||
|
DELETED = "deleted" # 204
|
||||||
|
CREATED = "created" # 201
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def success_response(cls, data=None, message=None):
|
||||||
|
"""
|
||||||
|
Docstring for success_response
|
||||||
|
|
||||||
|
:param cls: Description
|
||||||
|
:param data: Description
|
||||||
|
:param message: Description
|
||||||
|
"""
|
||||||
|
response_data = {
|
||||||
|
"status_code": status.HTTP_200_OK,
|
||||||
|
"status": cls.SUCCESS,
|
||||||
|
}
|
||||||
|
if message is not None:
|
||||||
|
response_data['message'] = message
|
||||||
|
if data is not None:
|
||||||
|
response_data['data'] = data
|
||||||
|
return Response(response_data, status=response_data["status_code"])
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def failure_response(cls, data=None, message=None):
|
||||||
|
"""
|
||||||
|
Docstring for failure_response
|
||||||
|
|
||||||
|
:param cls: Description
|
||||||
|
:param data: Description
|
||||||
|
:param message: Description
|
||||||
|
"""
|
||||||
|
response_data = {
|
||||||
|
"status_code": status.HTTP_400_BAD_REQUEST,
|
||||||
|
"status": cls.FAILURE
|
||||||
|
}
|
||||||
|
if message is not None:
|
||||||
|
response_data["message"] = message
|
||||||
|
if data is not None:
|
||||||
|
response_data["data"] = data
|
||||||
|
return
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def not_found_response(cls, data=None, message=None):
|
||||||
|
"""
|
||||||
|
Docstring for not_found_response
|
||||||
|
|
||||||
|
:param cls: Description
|
||||||
|
:param data: Description
|
||||||
|
:param message: Description
|
||||||
|
"""
|
||||||
|
response_data = {
|
||||||
|
"status_code": status.HTTP_404_NOT_FOUND,
|
||||||
|
"status": cls.NOT_FOUND
|
||||||
|
}
|
||||||
|
if message is not None:
|
||||||
|
response_data["message"] = message
|
||||||
|
if data is not None:
|
||||||
|
response_data["data"] = data
|
||||||
|
return Response(response_data, status=response_data['status_code'])
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def deleted_response(cls,message=None):
|
||||||
|
"""
|
||||||
|
Docstring for deleted_response
|
||||||
|
|
||||||
|
:param cls: Description
|
||||||
|
:param message: Description
|
||||||
|
"""
|
||||||
|
|
||||||
|
response_data = {
|
||||||
|
"status_code": status.HTTP_204_NO_CONTENT,
|
||||||
|
"status": cls.DELETED
|
||||||
|
}
|
||||||
|
if message is not None:
|
||||||
|
response_data["message"] = message
|
||||||
|
return Response(response_data, status=response_data['status_code'])
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def created_response(cls, data=None, message=None):
|
||||||
|
"""
|
||||||
|
Docstring for created_response
|
||||||
|
|
||||||
|
:param cls: Description
|
||||||
|
:param data: Description
|
||||||
|
:param message: Description
|
||||||
|
"""
|
||||||
|
response_data = {
|
||||||
|
"status_code": status.HTTP_201_CREATED,
|
||||||
|
"status": cls.CREATED
|
||||||
|
}
|
||||||
|
if message is not None:
|
||||||
|
response_data["message"] = message
|
||||||
|
if data is not None:
|
||||||
|
response_data["data"] = data
|
||||||
|
return Response(response_data, status=response_data['status_code'])
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def error_response(cls, data=None, message=None):
|
||||||
|
"""
|
||||||
|
Docstring for error_response
|
||||||
|
|
||||||
|
:param cls: Description
|
||||||
|
:param data: Description
|
||||||
|
:param message: Description
|
||||||
|
"""
|
||||||
|
response_data = {
|
||||||
|
"status_code": status.HTTP_500_INTERNAL_SERVER_ERROR,
|
||||||
|
"status": cls.ERROR
|
||||||
|
}
|
||||||
|
if message is not None:
|
||||||
|
response_data["message"] = message
|
||||||
|
if data is not None:
|
||||||
|
response_data["data"] = data
|
||||||
|
return Response(response_data, status=response_data["status_code"])
|
||||||
Reference in New Issue
Block a user