mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-21 03:27:21 -06:00
Fixed custom renderers to work with paginated data
This commit is contained in:
parent
2bd46230be
commit
ffde2c96c7
@ -27,9 +27,7 @@ class BINDZoneRenderer(renderers.BaseRenderer):
|
|||||||
|
|
||||||
def render(self, data, media_type=None, renderer_context=None):
|
def render(self, data, media_type=None, renderer_context=None):
|
||||||
records = []
|
records = []
|
||||||
if not isinstance(data, (list, tuple)):
|
for record in data['results']:
|
||||||
data = (data,)
|
|
||||||
for record in data:
|
|
||||||
if record.get('name') and record.get('primary_ip'):
|
if record.get('name') and record.get('primary_ip'):
|
||||||
try:
|
try:
|
||||||
records.append("{} IN {} {}".format(
|
records.append("{} IN {} {}".format(
|
||||||
@ -59,7 +57,7 @@ class FlatJSONRenderer(renderers.BaseRenderer):
|
|||||||
else:
|
else:
|
||||||
yield key, val
|
yield key, val
|
||||||
|
|
||||||
return json.dumps([dict(flatten(i)) for i in data])
|
return json.dumps([dict(flatten(i)) for i in data['results']])
|
||||||
|
|
||||||
|
|
||||||
class FreeRADIUSClientsRenderer(renderers.BaseRenderer):
|
class FreeRADIUSClientsRenderer(renderers.BaseRenderer):
|
||||||
@ -77,7 +75,7 @@ class FreeRADIUSClientsRenderer(renderers.BaseRenderer):
|
|||||||
def render(self, data, media_type=None, renderer_context=None):
|
def render(self, data, media_type=None, renderer_context=None):
|
||||||
clients = []
|
clients = []
|
||||||
try:
|
try:
|
||||||
for secret in data:
|
for secret in data['results']:
|
||||||
if secret['device']['primary_ip'] and secret['plaintext']:
|
if secret['device']['primary_ip'] and secret['plaintext']:
|
||||||
client = self.CLIENT_TEMPLATE.format(
|
client = self.CLIENT_TEMPLATE.format(
|
||||||
name=secret['device']['name'],
|
name=secret['device']['name'],
|
||||||
|
Loading…
Reference in New Issue
Block a user