Skip to content

OrderingFilter should call get_serializer_class() to determine default fields. #3957

Closed
@bmampaey

Description

@bmampaey

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.)

GenericAPIView says

You'll need to either set these attributes,
or override get_queryset()/get_serializer_class().

But in the method get_valid_fields of the OrderingFilter class, it gets the serializer_class like so

serializer_class = getattr(view, 'serializer_class')

I believe it should be

serializer_class = view.get_serializer_class()

Benjamin

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions