from rest_framework.views import exception_handler from rest_framework.response import Response from django.db import DatabaseError def custom_exception_handler(exc, context): # Call REST framework's default exception handler first, # to get the standard error response. response = exception_handler(exc, context) # Now add the HTTP status code to the response. if response is not None: response.data['status_code'] = response.status_code response = Response(response.data) else: if isinstance(exc, DatabaseError): pass # response = Response({'detail': 'Database Error'}) else: pass # response = Response({'detail': 'Other Error'}) return response