From 2333a8568d20aec1e23db52ca99b4be735409bed Mon Sep 17 00:00:00 2001 From: Camille Harang Date: Thu, 6 Oct 2016 16:56:48 +0200 Subject: [PATCH] #4541 Additional fix for remove_invalid_fields() --- rest_framework/filters.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rest_framework/filters.py b/rest_framework/filters.py index b8d6d4535..0050ee7cd 100644 --- a/rest_framework/filters.py +++ b/rest_framework/filters.py @@ -252,7 +252,7 @@ class OrderingFilter(BaseFilterBackend): params = request.query_params.get(self.ordering_param) if params: fields = [param.strip() for param in params.split(',')] - ordering = self.remove_invalid_fields(queryset, fields, view) + ordering = self.remove_invalid_fields(queryset, fields, view, request) if ordering: return ordering @@ -316,8 +316,8 @@ class OrderingFilter(BaseFilterBackend): return valid_fields - def remove_invalid_fields(self, queryset, fields, view): - valid_fields = [item[0] for item in self.get_valid_fields(queryset, view)] + def remove_invalid_fields(self, queryset, fields, view, request): + valid_fields = [item[0] for item in self.get_valid_fields(queryset, view, {'request': request})] return [term for term in fields if term.lstrip('-') in valid_fields] def filter_queryset(self, request, queryset, view):