mirror of
https://github.com/pretix/pretix.git
synced 2026-05-07 15:34:02 +00:00
Add API for badge and ticket layout assignments
This commit is contained in:
@@ -6,7 +6,13 @@ from pretix.api.serializers.order import CompatibleJSONField
|
||||
from .models import BadgeItem, BadgeLayout
|
||||
|
||||
|
||||
class ItemAssignmentSerializer(I18nAwareModelSerializer):
|
||||
class BadgeItemAssignmentSerializer(I18nAwareModelSerializer):
|
||||
class Meta:
|
||||
model = BadgeItem
|
||||
fields = ('id', 'item', 'layout')
|
||||
|
||||
|
||||
class NestedItemAssignmentSerializer(I18nAwareModelSerializer):
|
||||
class Meta:
|
||||
model = BadgeItem
|
||||
fields = ('item',)
|
||||
@@ -14,7 +20,7 @@ class ItemAssignmentSerializer(I18nAwareModelSerializer):
|
||||
|
||||
class BadgeLayoutSerializer(I18nAwareModelSerializer):
|
||||
layout = CompatibleJSONField()
|
||||
item_assignments = ItemAssignmentSerializer(many=True)
|
||||
item_assignments = NestedItemAssignmentSerializer(many=True)
|
||||
|
||||
class Meta:
|
||||
model = BadgeLayout
|
||||
@@ -28,3 +34,12 @@ class BadgeLayoutViewSet(viewsets.ReadOnlyModelViewSet):
|
||||
|
||||
def get_queryset(self):
|
||||
return self.request.event.badge_layouts.all()
|
||||
|
||||
|
||||
class BadgeItemViewSet(viewsets.ReadOnlyModelViewSet):
|
||||
serializer_class = BadgeItemAssignmentSerializer
|
||||
queryset = BadgeItem.objects.none()
|
||||
lookup_field = 'id'
|
||||
|
||||
def get_queryset(self):
|
||||
return BadgeItem.objects.filter(item__event=self.request.event)
|
||||
|
||||
Reference in New Issue
Block a user