Fixes #6110: Fix handling of TemplateColumn values for table export

This commit is contained in:
jeremystretch 2021-04-08 10:30:13 -04:00
parent 54d9ca8ed8
commit d6fcd22752
2 changed files with 5 additions and 3 deletions

View File

@ -13,6 +13,7 @@
* [#6105](https://github.com/netbox-community/netbox/issues/6105) - Hide checkboxes for VMs under cluster VMs view * [#6105](https://github.com/netbox-community/netbox/issues/6105) - Hide checkboxes for VMs under cluster VMs view
* [#6106](https://github.com/netbox-community/netbox/issues/6106) - Allow assigning a virtual interface as the parent of an existing interface * [#6106](https://github.com/netbox-community/netbox/issues/6106) - Allow assigning a virtual interface as the parent of an existing interface
* [#6107](https://github.com/netbox-community/netbox/issues/6107) - Fix rack selection field on device form * [#6107](https://github.com/netbox-community/netbox/issues/6107) - Fix rack selection field on device form
* [#6110](https://github.com/netbox-community/netbox/issues/6110) - Fix handling of TemplateColumn values for table export
--- ---

View File

@ -15,15 +15,16 @@ from extras.models import CustomField
from .paginator import EnhancedPaginator, get_paginate_count from .paginator import EnhancedPaginator, get_paginate_count
def stripped_value(self, value): def stripped_value(self, **kwargs):
""" """
Replaces TemplateColumn's value() method to both strip HTML tags and remove any leading/trailing whitespace. Replaces TemplateColumn's value() method to both strip HTML tags and remove any leading/trailing whitespace.
""" """
return strip_tags(value).strip() html = super(tables.TemplateColumn, self).value(**kwargs)
return strip_tags(html).strip() if isinstance(html, str) else html
# TODO: We're monkey-patching TemplateColumn here to strip leading/trailing whitespace. This will no longer # TODO: We're monkey-patching TemplateColumn here to strip leading/trailing whitespace. This will no longer
# be necessary if django-tables2 PR #794 is accepted. (See #5926) # be necessary under django-tables2 v2.3.5+. (See #5926)
tables.TemplateColumn.value = stripped_value tables.TemplateColumn.value = stripped_value