Skip to content

Commit 73c0010

Browse files
author
Ryan P Kilby
committed
Remove default RelatedFilter.queryset handling
1 parent ebb03cf commit 73c0010

File tree

2 files changed

+12
-12
lines changed

2 files changed

+12
-12
lines changed

rest_framework_filters/filters.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,9 @@ def fset(self, value):
3838

3939
def get_queryset(self, request):
4040
queryset = super(RelatedFilter, self).get_queryset(request)
41-
if queryset is not None:
42-
return queryset
43-
return self.filterset._meta.model._default_manager.all()
41+
assert queryset is not None, \
42+
"Expected `.get_queryset()` to return a `QuerySet`, but got `None`."
43+
return queryset
4444

4545

4646
class AllLookupsFilter(AutoFilter):

tests/testapp/filters.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ class Meta:
4848

4949
class NoteFilterWithRelated(FilterSet):
5050
title = filters.CharFilter(name='title')
51-
author = RelatedFilter(UserFilter, name='author')
51+
author = RelatedFilter(UserFilter, name='author', queryset=User.objects.all())
5252

5353
class Meta:
5454
model = Note
@@ -57,7 +57,7 @@ class Meta:
5757

5858
class NoteFilterWithRelatedAll(FilterSet):
5959
title = filters.CharFilter(name='title')
60-
author = RelatedFilter(UserFilterWithAll, name='author')
60+
author = RelatedFilter(UserFilterWithAll, name='author', queryset=User.objects.all())
6161

6262
class Meta:
6363
model = Note
@@ -66,7 +66,7 @@ class Meta:
6666

6767
class NoteFilterWithRelatedAllDifferentFilterName(FilterSet):
6868
title = filters.CharFilter(name='title')
69-
writer = RelatedFilter(UserFilterWithAll, name='author')
69+
writer = RelatedFilter(UserFilterWithAll, name='author', queryset=User.objects.all())
7070

7171
class Meta:
7272
model = Note
@@ -75,7 +75,7 @@ class Meta:
7575

7676
class PostFilter(FilterSet):
7777
# Used for Related filter and Filter.method regression tests
78-
note = RelatedFilter(NoteFilterWithRelatedAll, name='note')
78+
note = RelatedFilter(NoteFilterWithRelatedAll, name='note', queryset=Note.objects.all())
7979
date_published = filters.AllLookupsFilter()
8080
is_published = filters.BooleanFilter(name='date_published', method='filter_is_published')
8181

@@ -96,7 +96,7 @@ def filter_is_published(self, qs, name, value):
9696

9797
class CoverFilterWithRelatedMethodFilter(FilterSet):
9898
comment = filters.CharFilter(name='comment')
99-
post = RelatedFilter(PostFilter, name='post')
99+
post = RelatedFilter(PostFilter, name='post', queryset=Post.objects.all())
100100

101101
class Meta:
102102
model = Cover
@@ -105,7 +105,7 @@ class Meta:
105105

106106
class CoverFilterWithRelated(FilterSet):
107107
comment = filters.CharFilter(name='comment')
108-
post = RelatedFilter(PostFilter, name='post')
108+
post = RelatedFilter(PostFilter, name='post', queryset=Post.objects.all())
109109

110110
class Meta:
111111
model = Cover
@@ -114,7 +114,7 @@ class Meta:
114114

115115
class PageFilterWithRelated(FilterSet):
116116
title = filters.CharFilter(name='title')
117-
previous_page = RelatedFilter(PostFilter, name='previous_page')
117+
previous_page = RelatedFilter(PostFilter, name='previous_page', queryset=Post.objects.all())
118118

119119
class Meta:
120120
model = Page
@@ -131,7 +131,7 @@ class Meta:
131131

132132
class BlogPostFilter(FilterSet):
133133
title = filters.CharFilter(name='title')
134-
tags = RelatedFilter(TagFilter, name='tags')
134+
tags = RelatedFilter(TagFilter, name='tags', queryset=Tag.objects.all())
135135

136136
class Meta:
137137
model = BlogPost
@@ -186,7 +186,7 @@ class Meta:
186186

187187
class PersonFilter(FilterSet):
188188
name = AllLookupsFilter(name='name')
189-
best_friend = RelatedFilter('tests.testapp.filters.PersonFilter', name='best_friend')
189+
best_friend = RelatedFilter('tests.testapp.filters.PersonFilter', name='best_friend', queryset=Person.objects.all())
190190

191191
class Meta:
192192
model = Person

0 commit comments

Comments
 (0)