diff --git a/backend/apps/interactions/views.py b/backend/apps/interactions/views.py index 6db26c5..c92d5ca 100644 --- a/backend/apps/interactions/views.py +++ b/backend/apps/interactions/views.py @@ -1,4 +1,5 @@ from rest_framework import viewsets, permissions, status, filters +from django_filters.rest_framework import DjangoFilterBackend from rest_framework.decorators import action from rest_framework.response import Response from .models import Comment, Rating, Like, Favorite @@ -18,7 +19,7 @@ class CommentViewSet(viewsets.ModelViewSet): queryset = Comment.objects.select_related('author') permission_classes = [permissions.IsAuthenticatedOrReadOnly] - filter_backends = [filters.SearchFilter, filters.OrderingFilter, filters.DjangoFilterBackend] + filter_backends = [filters.SearchFilter, filters.OrderingFilter, DjangoFilterBackend] search_fields = ['content'] filterset_fields = ['target_type', 'target_id', 'ai_status'] ordering_fields = ['created_at'] @@ -96,7 +97,7 @@ class RatingViewSet(viewsets.ModelViewSet): queryset = Rating.objects.select_related('user') serializer_class = RatingSerializer permission_classes = [permissions.IsAuthenticatedOrReadOnly] - filter_backends = [filters.SearchFilter, filters.OrderingFilter, filters.DjangoFilterBackend] + filter_backends = [filters.SearchFilter, filters.OrderingFilter, DjangoFilterBackend] filterset_fields = ['target_type', 'target_id', 'user'] ordering_fields = ['created_at'] ordering = ['-created_at'] @@ -138,7 +139,7 @@ class LikeViewSet(viewsets.ModelViewSet): queryset = Like.objects.select_related('user') serializer_class = LikeSerializer permission_classes = [permissions.IsAuthenticated] - filter_backends = [filters.OrderingFilter, filters.DjangoFilterBackend] + filter_backends = [filters.OrderingFilter, DjangoFilterBackend] filterset_fields = ['target_type', 'target_id', 'user'] ordering_fields = ['created_at'] ordering = ['-created_at'] @@ -189,7 +190,7 @@ class FavoriteViewSet(viewsets.ModelViewSet): queryset = Favorite.objects.select_related('user') serializer_class = FavoriteSerializer permission_classes = [permissions.IsAuthenticated] - filter_backends = [filters.OrderingFilter, filters.DjangoFilterBackend] + filter_backends = [filters.OrderingFilter, DjangoFilterBackend] filterset_fields = ['target_type', 'target_id', 'user'] ordering_fields = ['created_at'] ordering = ['-created_at'] diff --git a/backend/apps/moderation/views.py b/backend/apps/moderation/views.py index 4798a5c..b5b6f72 100644 --- a/backend/apps/moderation/views.py +++ b/backend/apps/moderation/views.py @@ -1,4 +1,5 @@ from rest_framework import viewsets, permissions, status, filters +from django_filters.rest_framework import DjangoFilterBackend from rest_framework.decorators import action from rest_framework.response import Response from django.db.models import Q @@ -21,7 +22,7 @@ class ModeratorApplicationViewSet(viewsets.ModelViewSet): """ViewSet for ModeratorApplication model.""" permission_classes = [permissions.IsAuthenticated] - filter_backends = [filters.SearchFilter, filters.OrderingFilter, filters.DjangoFilterBackend] + filter_backends = [filters.SearchFilter, filters.OrderingFilter, DjangoFilterBackend] search_fields = ['applicant__username', 'region__name'] filterset_fields = ['status', 'rank', 'region'] ordering_fields = ['created_at', 'deadline']