Skip to main content

Django app for customizing response

Project description

Django Success Response

django-success-response is a Django REST Framework extension that standardizes success and error response formats in API views. It simplifies response handling by providing a consistent structure and offers easy customization for data formats.

Official Docs: django-success-response.moorfo.uz

Installation

Install the package via pip:

pip install django-success-response

Usage

Standard Success Response

To return a standard success response, use SuccessResponse in your Django views.

Example:

from success_response.response import SuccessResponse
from rest_framework.views import APIView

class MyView(APIView):
    @staticmethod
    def get(request):
        data = {'key': 'value'}
        return SuccessResponse(data)

Response:

{
    "success": true,
    "result": {
        "key": "value"
    }
}

Error Response

For error responses, set success=False and provide an error message.

Example:

from success_response.response import SuccessResponse
from rest_framework.views import APIView

class MyView(APIView):
    @staticmethod
    def get(request):
        data = {'message': 'error'}
        return SuccessResponse(data, success=False)

Response:

{
    "success": false,
    "error": {
        "message": "error"
    }
}

Error Handling

To format all error responses using the SuccessResponse structure, configure the EXCEPTION_HANDLER in your settings.py:

REST_FRAMEWORK = {
    'EXCEPTION_HANDLER': 'success_response.views.success_exception_handler'
}

Generic Views and ViewSets

django-success-response provides customized DRF generic views and viewsets that automatically return responses in the SuccessResponse format.

Available Views and ViewSets:

Standard View Success Equivalent
CreateAPIView SuccessCreateAPIView
RetrieveAPIView SuccessRetrieveAPIView
UpdateAPIView SuccessUpdateAPIView
DestroyAPIView SuccessDestroyAPIView
ListAPIView SuccessListAPIView
RetrieveUpdateAPIView SuccessRetrieveUpdateAPIView
RetrieveDestroyAPIView SuccessRetrieveDestroyAPIView
RetrieveUpdateDestroyAPIView SuccessRetrieveUpdateDestroyAPIView
ModelViewSet SuccessModelViewSet
ReadOnlyModelViewSet SuccessReadOnlyModelViewSet

These views behave like their DRF counterparts but automatically format responses using SuccessResponse.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_success_response-1.1.2.tar.gz (7.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_success_response-1.1.2-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file django_success_response-1.1.2.tar.gz.

File metadata

  • Download URL: django_success_response-1.1.2.tar.gz
  • Upload date:
  • Size: 7.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.6

File hashes

Hashes for django_success_response-1.1.2.tar.gz
Algorithm Hash digest
SHA256 325acc5186ba13df26af94a6aade749f224a2d47f15fc942885912744e665d50
MD5 d8f93fdc5dd8f634a781437f22962805
BLAKE2b-256 59981dd244f15a692c966a68778572a3df7781e843c3e0cd2a607b4ca31807af

See more details on using hashes here.

File details

Details for the file django_success_response-1.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for django_success_response-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b639f6a3581f3fcca5b0c12be2ae290f061a271cf6218438242e398c231a40c3
MD5 60d0f293178d6b37d901f70dd87a5807
BLAKE2b-256 83bebfbc42031f82d92149d3c82531c991651842e7bef3cabc5d4ec9060bed0e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page