1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

#1246: Initial work on an API endpoint to retrieve available IPs for a prefix

This commit is contained in:
Jeremy Stretch
2017-06-28 16:23:17 -04:00
parent 5940feb64b
commit d5bb37b552
3 changed files with 75 additions and 6 deletions

View File

@@ -1,4 +1,5 @@
from __future__ import unicode_literals
from collections import OrderedDict
from rest_framework import serializers
from rest_framework.validators import UniqueTogetherValidator
@@ -268,6 +269,20 @@ class WritableIPAddressSerializer(CustomFieldModelSerializer):
]
class AvailableIPSerializer(serializers.Serializer):
def to_representation(self, instance):
if self.context.get('vrf'):
vrf = NestedVRFSerializer(self.context['vrf'], context={'request': self.context['request']}).data
else:
vrf = None
return OrderedDict([
('family', self.context['prefix'].version),
('address', '{}/{}'.format(instance, self.context['prefix'].prefixlen)),
('vrf', vrf),
])
#
# Services
#