Skip to content

EXCEPTION_HANDLER on View.settings not respected #5054

Closed
@sigmavirus24

Description

@sigmavirus24

Checklist

  • I have verified that that issue exists against the master branch of Django REST framework.
  • I have searched for similar issues in both open and closed tickets and cannot find a duplicate.
  • This is not a usage question. (Those should be directed to the discussion group instead.)
  • This cannot be dealt with as a third party library. (We prefer new functionality to be in the form of third party libraries where possible.)
  • I have reduced the issue to the simplest possible case.
  • I have included a failing test as a pull request. (If you are unable to do so we can still accept the issue.)

Steps to reproduce

  1. Create a View with a custom ApiSettings with EXCEPTION_HANDLER specified
  2. Trigger an exception and notice that the custom exception handler isn't triggered because the APIView class only ever uses rest_framework.settings.api_settings.

Expected behavior

  1. View uses self.settings since views can override settings objects so easily.

Actual behavior

  1. Uses default handler instead

Extras

The 3.4 series used self.settings.EXCEPTION_HANDLER but 3.5 moved to use get_exception_handler which started using rest_framework.settings.api_settings.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions