Skip to content
Snippets Groups Projects
Select Git revision
  • 945411f21a9572595247d3c26428f694b999f89d
  • main default protected
  • docker
  • feature-tracker
  • fix-api
  • feature-event-wizard
  • feature-akslides
  • fix-history-interest
  • feature-constraint-checking-wip
  • feature-constraint-checking
10 results

api.py

Blame
  • Forked from KIF / AKPlanning
    861 commits behind the upstream repository.
    Benjamin Hättasch's avatar
    Benjamin Hättasch authored and Nadja Geisler committed
    945411f2
    History
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    api.py 797 B
    from rest_framework import viewsets, permissions, mixins, serializers
    
    from AKModel.models import Room
    from AKModel.views import EventSlugMixin
    
    
    class ResourceSerializer(serializers.ModelSerializer):
        class Meta:
            model = Room
            fields = ['id', 'title']
    
        title = serializers.SerializerMethodField('transform_title')
    
        def transform_title(self, obj):
            if obj.capacity > 0:
                return f"{obj.title} [{obj.capacity}]"
            return obj.title
    
    
    class ResourcesViewSet(EventSlugMixin, mixins.RetrieveModelMixin, mixins.ListModelMixin, viewsets.GenericViewSet):
        permission_classes = (permissions.DjangoModelPermissionsOrAnonReadOnly,)
        serializer_class = ResourceSerializer
    
        def get_queryset(self):
            return Room.objects.filter(event=self.event)