Add API for badge and ticket layout assignments

This commit is contained in:
Raphael Michel
2019-03-06 09:35:08 +01:00
parent f3ef00e3b7
commit 2b8949dea4
6 changed files with 51 additions and 5 deletions

View File

@@ -8,6 +8,13 @@ from .models import TicketLayout, TicketLayoutItem
class ItemAssignmentSerializer(I18nAwareModelSerializer):
class Meta:
model = TicketLayoutItem
fields = ('id', 'layout', 'item', 'sales_channel')
class NestedItemAssignmentSerializer(I18nAwareModelSerializer):
class Meta:
model = TicketLayoutItem
fields = ('item', 'sales_channel')
@@ -15,7 +22,7 @@ class ItemAssignmentSerializer(I18nAwareModelSerializer):
class TicketLayoutSerializer(I18nAwareModelSerializer):
layout = CompatibleJSONField()
item_assignments = ItemAssignmentSerializer(many=True)
item_assignments = NestedItemAssignmentSerializer(many=True)
class Meta:
model = TicketLayout
@@ -29,3 +36,12 @@ class TicketLayoutViewSet(viewsets.ReadOnlyModelViewSet):
def get_queryset(self):
return self.request.event.ticket_layouts.all()
class TicketLayoutItemViewSet(viewsets.ReadOnlyModelViewSet):
serializer_class = ItemAssignmentSerializer
queryset = TicketLayoutItem.objects.none()
lookup_field = 'id'
def get_queryset(self):
return TicketLayoutItem.objects.filter(item__event=self.request.event)