1 from django.forms import widgets
2 from rest_framework import serializers
3 from plstackapi.planetstack.models import *
6 class RoleSerializer(serializers.HyperlinkedModelSerializer):
15 class UserSerializer(serializers.HyperlinkedModelSerializer):
16 site = serializers.HyperlinkedRelatedField(view_name='site-detail')
17 slice_memberships = serializers.HyperlinkedRelatedField(view_name='slice-membership-detail')
18 site_privileges = serializers.HyperlinkedRelatedField(view_name='site-privilege-detail')
35 class SliceSerializer(serializers.HyperlinkedModelSerializer):
37 site = serializers.HyperlinkedRelatedField(view_name='site-detail')
52 class SiteSerializer(serializers.HyperlinkedModelSerializer):
54 #Experimenting with whether to use ids, hyperlinks, or nested includes
55 #slices = serializers.PrimaryKeyRelatedField(many=True, read_only=True)
56 #slices = serializers.RelatedField(many=True, read_only=True)
57 #slices = SliceSerializer(many=True)
58 slices = serializers.HyperlinkedRelatedField(many=True, read_only=True,view_name='slice-detail')
59 deployment_networks = serializers.HyperlinkedRelatedField(many=True, read_only=True,view_name='sitedeploymentnetwork-detail')
66 'deployment_networks',
79 class DeploymentNetworkSerializer(serializers.HyperlinkedModelSerializer):
81 sites = serializers.HyperlinkedRelatedField(view_name='sitedeploymentnetwork-detail')
83 model = DeploymentNetwork
89 class SiteDeploymentNetworkSerializer(serializers.HyperlinkedModelSerializer):
91 site = serializers.HyperlinkedRelatedField(view_name='site-detail')
92 deploymentNetwork = serializers.HyperlinkedRelatedField(view_name='deploymentnetwork-detail')
95 model = SiteDeploymentNetwork
100 class SliverSerializer(serializers.ModelSerializer):
101 slice = serializers.RelatedField(read_only=True)
102 #slice = serializers.PrimaryKeyRelatedField(read_only=True)
110 class NodeSerializer(serializers.ModelSerializer):
117 class ImageSerializer(serializers.ModelSerializer):
127 class FlavorSerializer(serializers.ModelSerializer):
139 Role: RoleSerializer,
140 Site: SiteSerializer,
141 Slice: SliceSerializer,
142 Node: NodeSerializer,
143 Sliver: SliverSerializer,
144 DeploymentNetwork: DeploymentNetworkSerializer,
145 SiteDeploymentNetwork: SiteDeploymentNetworkSerializer,
146 Image: ImageSerializer,
147 Flavor: FlavorSerializer,