Updated RackViewSet() to be compatible with paginated API

This commit is contained in:
Jeremy Stretch
2017-03-20 10:38:09 -04:00
parent 36bbcc8559
commit 1f78462f58
2 changed files with 26 additions and 17 deletions

View File

@@ -175,6 +175,28 @@ class WritableRackSerializer(serializers.ModelSerializer):
return data
#
# Rack units
#
class NestedDeviceSerializer(serializers.ModelSerializer):
url = serializers.HyperlinkedIdentityField(view_name='dcim-api:device-detail')
class Meta:
model = Device
fields = ['id', 'url', 'name', 'display_name']
class RackUnitSerializer(serializers.Serializer):
"""
A rack unit is an abstraction formed by the set (rack, position, face); it does not exist as a row in the database.
"""
id = serializers.IntegerField(read_only=True)
name = serializers.CharField(read_only=True)
face = serializers.IntegerField(read_only=True)
device = NestedDeviceSerializer(read_only=True)
#
# Rack reservations
#
@@ -454,14 +476,6 @@ class DeviceSerializer(CustomFieldModelSerializer):
}
class NestedDeviceSerializer(serializers.ModelSerializer):
url = serializers.HyperlinkedIdentityField(view_name='dcim-api:device-detail')
class Meta:
model = Device
fields = ['id', 'url', 'name', 'display_name']
class WritableDeviceSerializer(serializers.ModelSerializer):
class Meta: