Есть ли способ обработать все исключения глобально, не используя блок try-Кроме в django rest Framework.
Я хочу преобразовать html страницу ошибки, которую django выбрасывает в пользовательский json ответ объекта.
Я создал файл exception.py в своем приложении
def custom_exception_handler(exc, context=None):
response = exception_handler(exc)
if isinstance(exc, HttpResponseServerError):
custom_response_data = {
'detail': 'Internal Server Error' # custom exception message
}
response.data = custom_response_data
return response
Я настроил это в settings.py.
REST_FRAMEWORK = {
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
'PAGE_SIZE': 10,
'EXCEPTION_HANDLER':'my_project.my_app.exceptions.custom_exception_handler'}