From 6230ae13cc9fc63e448953b482326a66975caa35 Mon Sep 17 00:00:00 2001 From: rdujardin Date: Thu, 21 Jul 2016 11:44:05 +0200 Subject: [PATCH] Add bind exports in dns api --- netbox/dns/api/serializers.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/netbox/dns/api/serializers.py b/netbox/dns/api/serializers.py index f62285bd6..d99e6366b 100644 --- a/netbox/dns/api/serializers.py +++ b/netbox/dns/api/serializers.py @@ -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):