diff --git a/netbox/extras/models.py b/netbox/extras/models.py index ff9977160..fe80ec09a 100644 --- a/netbox/extras/models.py +++ b/netbox/extras/models.py @@ -854,10 +854,6 @@ class ObjectChange(models.Model): self.object_data, ) - @property - def object_data_pretty(self): - return json.dumps(self.object_data, indent=4, sort_keys=True) - # # User actions diff --git a/netbox/templates/dcim/device_configcontext.html b/netbox/templates/dcim/device_configcontext.html index adb00291d..537093edf 100644 --- a/netbox/templates/dcim/device_configcontext.html +++ b/netbox/templates/dcim/device_configcontext.html @@ -1,4 +1,5 @@ {% extends 'dcim/device.html' %} +{% load helpers %} {% block title %}{{ device }} - Config Context{% endblock %} @@ -10,7 +11,7 @@ Config Context
-
{{ device.get_config_context }}
+
{{ device.get_config_context|render_json }}
diff --git a/netbox/templates/extras/objectchange.html b/netbox/templates/extras/objectchange.html index df606bacc..c86a5528d 100644 --- a/netbox/templates/extras/objectchange.html +++ b/netbox/templates/extras/objectchange.html @@ -83,7 +83,7 @@ Object Data
-
{{ objectchange.object_data_pretty }}
+
{{ objectchange.object_data|render_json }}
diff --git a/netbox/utilities/templatetags/helpers.py b/netbox/utilities/templatetags/helpers.py index 1380941b3..9edf4ad36 100644 --- a/netbox/utilities/templatetags/helpers.py +++ b/netbox/utilities/templatetags/helpers.py @@ -1,6 +1,7 @@ from __future__ import unicode_literals import datetime +import json from django import template from django.utils.safestring import mark_safe @@ -46,6 +47,14 @@ def gfm(value): return mark_safe(html) +@register.filter() +def render_json(value): + """ + Render a dictionary as formatted JSON. + """ + return json.dumps(value, indent=4, sort_keys=True) + + @register.filter() def model_name(obj): """