Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
3.8 kB
3
Indexable
Never
#settings.py
from rest_framework.response import Response
from rest_framework.generics import GenericAPIView
from rest_framework.mixins import ListModelMixin, CreateModelMixin
from rest_framework import viewsets
from rest_framework.generics import get_object_or_404
from firsatcocuk_core.models import *
from firsatcocuk_core.api.serializers import *

from dj_rest_auth.registration.views import RegisterView
from .serializers import CustomRegisterSerializer
from rest_framework import views
#to add
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework import authentication, permissions
from django.contrib.auth.models import User
import secrets
import base64
import hmac
import hashlib
import requests
import json

class ArtistViewSet(viewsets.ModelViewSet):
    queryset = Artist.objects.all()
    serializer_class = ArtistSerializer
    
class ListUsers(APIView):
    """
    View to list all users in the system.

    * Requires token authentication.
    * Only admin users are able to access this view.
    """
    authentication_classes = [authentication.TokenAuthentication]
    permission_classes = [permissions.IsAdminUser]

    def get(self, request, format=None):
        """
        Return a list of all users.
        """
        usernames = [user.username for user in User.objects.all()]
        return Response(usernames)

class ListArtists(APIView):
    """
    View to list all artists  in the system.

    * Requires token authentication.
    * Only admin users are able to access this view.
    """
    authentication_classes = [authentication.TokenAuthentication]
    permission_classes = [permissions.IsAdminUser]

    def get(self, request, format=None):
        """
        Return a list of all users.
        """
        artistnames = [artist.name for user in Artist.objects.all()]
        return Response(artistnames)
#serializers.py
from rest_framework import serializers
from firsatcocuk_core.models import *

from dj_rest_auth.serializers import TokenSerializer
from dj_rest_auth.registration.serializers import RegisterSerializer

class ArtistSerializer(serializers.ModelSerializer):
    class Meta:
        model = Artist
        fields = '__all__'
        

#urls.py
from django.urls import path, include
from firsatcocuk_core.api.views import *
from django.conf import settings
from rest_framework import routers
from django.conf.urls.static import static

routers = routers.DefaultRouter()
routers.register('artists', ArtistViewSet)
routers.register('cities', CityViewSet)
routers.register('buildings', BuildingViewSet)
routers.register('rules', RuleViewSet)
routers.register('halls', HallViewSet)
routers.register('blocks', BlockViewSet)
routers.register('seats', SeatViewSet)
# routers.register('events', EventViewSet)
# routers.register('variants', VariantViewSet)
routers.register('tickets', TicketViewSet)
routers.register('categories', CategoryViewSet)
routers.register('sliders', SliderViewSet)

urlpatterns = [
                  path('', include(routers.urls)),
                  path('category/<int:id>/', CategoryDetailViewSet.as_view(), name="category_detail"),
                  path('category/<int:id>/<int:limit>/', CategoryDetailViewSet.as_view(), name="category_detail"),
                  path('payment/', PaymentViewSet.as_view(), name="payment"),
                  path('events/', EventViewSet.as_view(), name="event_detail"),
                  path('events/<int:id>/', EventViewSet.as_view(), name="event_detail"),
                  path('variants/', VariantViewSet.as_view(), name="variant_detail"),
                  path('variants/<int:id>/', VariantViewSet.as_view(), name="variant_detail"),
              ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)