From 27d91aaa2aaa181a95e9ecfb442b82a5986ff5b3 Mon Sep 17 00:00:00 2001 From: rizwanisready Date: Mon, 29 Apr 2024 12:30:56 +0530 Subject: [PATCH] tags api --- manage_events/api/serializers.py | 8 +++++++- manage_events/api/urls.py | 1 + manage_events/api/views.py | 10 ++++++++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/manage_events/api/serializers.py b/manage_events/api/serializers.py index a01747d..ba49028 100644 --- a/manage_events/api/serializers.py +++ b/manage_events/api/serializers.py @@ -2,7 +2,7 @@ from rest_framework import serializers from taggit_serializer.serializers import TagListSerializerField from accounts.models import IAmPrincipalLocation from manage_cms.api.serializers import TagSerializer - +from taggit.models import Tag from manage_events.utils import get_location_info from accounts.api.serializers import ProfileSerializer from manage_events.models import ( @@ -286,3 +286,9 @@ class EventReviewSerializer(serializers.ModelSerializer): def create(self, validated_data): validated_data["principal"] = self.context["request"].user return super().create(validated_data) + + +class TagSerializer(serializers.ModelSerializer): + class Meta: + model = Tag + fields = ["name"] diff --git a/manage_events/api/urls.py b/manage_events/api/urls.py index e90512d..4e632f9 100644 --- a/manage_events/api/urls.py +++ b/manage_events/api/urls.py @@ -110,4 +110,5 @@ urlpatterns = [ views.PrincipalEventsInteractionView.as_view(), name="principal-events", ), + path("tags/", views.TagListView.as_view(), name="tag-list"), ] diff --git a/manage_events/api/views.py b/manage_events/api/views.py index e3b400e..0068d4e 100644 --- a/manage_events/api/views.py +++ b/manage_events/api/views.py @@ -6,11 +6,13 @@ from django.conf import settings from accounts.models import IAmPrincipalLocation from goodtimes import constants from django.db.models import Q +from taggit.models import Tag from django.utils.dateparse import parse_date from goodtimes import services from goodtimes.utils import ApiResponse, CapacityError from rest_framework.permissions import IsAuthenticated from rest_framework_simplejwt.authentication import JWTAuthentication +from manage_cms.api.serializers import TagSerializer from manage_events.api.serializers import ( EventDateRangeSerializer, EventMasterSearchSerializer, @@ -812,3 +814,11 @@ class PrincipalEventsInteractionView(APIView): data=serializer.data, status=status.HTTP_200_OK, ) + + +class TagListView(generics.ListAPIView): + authentication_classes = [JWTAuthentication] + permission_classes = [IsAuthenticated] + + queryset = Tag.objects.all().distinct() + serializer_class = TagSerializer