Add bind exports in dns api

This commit is contained in:
rdujardin 2016-07-21 11:44:05 +02:00
parent 4046d697fc
commit 6230ae13cc

View File

@ -9,10 +9,18 @@ from dns.models import Zone, Record
class ZoneSerializer(serializers.ModelSerializer):
bind_export = serializers.SerializerMethodField()
class Meta:
model=Zone
fields = ['id', 'name', 'ttl', 'soa_name', 'soa_contact', 'soa_serial', 'soa_refresh', 'soa_retry', 'soa_expire', 'soa_minimum']
def get_bind_export(self, obj):
records = Record.objects.filter(zone=obj)
return {
'export': obj.to_bind(records),
}
class ZoneNestedSerializer(ZoneSerializer):
class Meta(ZoneSerializer.Meta):
@ -27,11 +35,17 @@ class RecordSerializer(serializers.ModelSerializer):
zone = ZoneNestedSerializer()
address = IPAddressNestedSerializer()
bind_export = serializers.SerializerMethodField()
class Meta:
model=Record
fields = ['id', 'name', 'record_type', 'priority', 'zone', 'address', 'value']
def get_bind_export(self, obj):
return {
'export': obj.to_bind(),
}
class RecordNestedSerializer(RecordSerializer):
class Meta(RecordSerializer.Meta):