Skip to content

Commit c7cf50b

Browse files
committed
feat: config django filter backends and filters
1 parent 17847c4 commit c7cf50b

File tree

3 files changed

+10
-1
lines changed

3 files changed

+10
-1
lines changed

backend/backend/apps/user/views.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from django.contrib.auth import login
22

3-
from rest_framework import viewsets, permissions
3+
from rest_framework import viewsets, permissions, filters
44
from rest_framework.decorators import action
55
from rest_framework.response import Response
66

@@ -43,6 +43,9 @@ class ProfileViewSet(viewsets.ModelViewSet):
4343

4444
queryset = Profile.objects.all()
4545
serializer_class = ProfileSerializer
46+
filter_backends = (filters.SearchFilter,)
47+
filterset_fields = ('username', 'user__email')
48+
search_fields = ('username', 'user__email')
4649

4750

4851
class LoginView(KnoxLoginView):

backend/backend/core/settings.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@
5151
'django_extensions',
5252
# rest framework
5353
'rest_framework',
54+
# django filtering
55+
'django_filters',
5456
# drf token auth
5557
'knox',
5658
# middleware (cors)
@@ -65,6 +67,9 @@
6567
'DEFAULT_AUTHENTICATION_CLASSES': [
6668
'knox.auth.TokenAuthentication',
6769
],
70+
'DEFAULT_FILTER_BACKENDS': [
71+
'django_filters.rest_framework.DjangoFilterBackend',
72+
],
6873
'DEFAULT_VERSIONING_CLASS': 'rest_framework.versioning.QueryParameterVersioning',
6974
'DEFAULT_VERSION': '1.0.0',
7075
# 'VERSION_PARAM': 'v',

backend/pyproject.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ django-cleanup = "^9.0.0"
2424
# rest framework and plugins
2525
djangorestframework = "^3.15.2"
2626
markdown = "^3.7"
27+
# 3rd party (django filtering)
2728
django-filter = "^24.3"
2829
# 3rd party (cors headers)
2930
django-cors-headers = "^4.6.0"

0 commit comments

Comments
 (0)