| from django.contrib.auth.models import User, Group |
| from rest_framework import serializers |
| from trackers import models |
| from ..models import Product |
| |
| |
| class UserSerializer(serializers.HyperlinkedModelSerializer): |
| class Meta: |
| model = User |
| fields = ('url', 'username', 'email', 'is_staff') |
| |
| |
| class GroupSerializer(serializers.HyperlinkedModelSerializer): |
| class Meta: |
| model = Group |
| fields = ('url', 'name') |
| |
| |
| class ProductSerializer(serializers.ModelSerializer): |
| class Meta: |
| model = Product |
| fields = '__all__' |
| |
| |
| class TicketSerializer(serializers.ModelSerializer): |
| api_url = serializers.SerializerMethodField() |
| api_events_url = serializers.SerializerMethodField() |
| |
| class Meta: |
| model = models.Ticket |
| fields = '__all__' |
| |
| def get_api_url(self, obj): |
| return self.context['request'].build_absolute_uri(obj.api_url()) |
| |
| def get_api_events_url(self, obj): |
| return self.context['request'].build_absolute_uri(obj.api_events_url()) |
| |
| |
| class TicketFieldSerializer(serializers.ModelSerializer): |
| api_url = serializers.SerializerMethodField() |
| |
| class Meta: |
| model = models.TicketField |
| fields = '__all__' |
| |
| def get_api_url(self, obj): |
| return self.context['request'].build_absolute_uri(obj.api_url()) |
| |
| |
| class ChangeEventSerializer(serializers.ModelSerializer): |
| api_url = serializers.SerializerMethodField() |
| api_ticket_url = serializers.SerializerMethodField() |
| |
| class Meta: |
| model = models.ChangeEvent |
| fields = '__all__' |
| |
| def get_api_url(self, obj): |
| return self.context['request'].build_absolute_uri(obj.api_url()) |
| |
| def get_api_ticket_url(self, obj): |
| return self.context['request'].build_absolute_uri(obj.api_ticket_url()) |