Search api lari tayyor
This commit is contained in:
1
core/apps/api/views/search/__init__.py
Normal file
1
core/apps/api/views/search/__init__.py
Normal file
@@ -0,0 +1 @@
|
||||
from .search import * # noqa
|
||||
29
core/apps/api/views/search/search.py
Normal file
29
core/apps/api/views/search/search.py
Normal file
@@ -0,0 +1,29 @@
|
||||
from rest_framework import mixins
|
||||
from rest_framework.viewsets import GenericViewSet
|
||||
from django_core.mixins.base import BaseViewSetMixin
|
||||
from drf_spectacular.utils import extend_schema
|
||||
from rest_framework.permissions import IsAuthenticated
|
||||
from core.apps.accounts.models import SearchHistory
|
||||
from core.apps.api.serializers.search import (
|
||||
ListSearchHistorySerializer,
|
||||
RetrieveSearchHistorySerializer,
|
||||
CreateSearchHistorySerializer,
|
||||
|
||||
)
|
||||
|
||||
|
||||
@extend_schema(tags=['Search'])
|
||||
class SearchHistoryViewSet(BaseViewSetMixin, mixins.ListModelMixin, mixins.CreateModelMixin,
|
||||
mixins.DestroyModelMixin, GenericViewSet):
|
||||
serializer_class = ListSearchHistorySerializer
|
||||
permission_classes = [IsAuthenticated]
|
||||
http_method_names = ['get', 'post', 'delete']
|
||||
action_permission_classes = {}
|
||||
action_serializer_class = {
|
||||
'list': ListSearchHistorySerializer,
|
||||
'create': CreateSearchHistorySerializer,
|
||||
}
|
||||
|
||||
def get_queryset(self):
|
||||
queryset = SearchHistory.objects.filter(user=self.request.user)
|
||||
return queryset
|
||||
Reference in New Issue
Block a user