diff --git a/netbox/ipam/tables/ip.py b/netbox/ipam/tables/ip.py index d285927d3..03365a442 100644 --- a/netbox/ipam/tables/ip.py +++ b/netbox/ipam/tables/ip.py @@ -309,8 +309,8 @@ class IPRangeTable(TenancyColumnsMixin, NetBoxTable): # class IPAddressTable(TenancyColumnsMixin, NetBoxTable): - address = tables.Column( - linkify=True, + address = tables.TemplateColumn( + template_code=IPADDRESS_LINK, verbose_name=_('IP Address') ) vrf = tables.TemplateColumn( diff --git a/netbox/ipam/tables/template_code.py b/netbox/ipam/tables/template_code.py index cc3a344bc..14b73b28d 100644 --- a/netbox/ipam/tables/template_code.py +++ b/netbox/ipam/tables/template_code.py @@ -25,18 +25,23 @@ PREFIX_LINK_WITH_DEPTH = """ {% endif %} """ + PREFIX_LINK +# Annotate the ID of each IP address for copy-to-clipboard functionality IPADDRESS_LINK = """ -{% if record.address or record.start_address %} - {{ record }} +{% if record.address %} + {{ record }} +{% elif record.start_address %} + {{ record }} {% elif perms.ipam.add_ipaddress %} - {{ record.title }} + {{ record.title }} {% else %} - {{ record.title }} + {{ record.title }} {% endif %} """ IPADDRESS_COPY_BUTTON = """ -{% copy_content record.pk prefix="ipaddress_" %} +{% if record.address %} + {% copy_content record.pk prefix="ipaddress_" %} +{% endif %} """ IPADDRESS_ASSIGN_LINK = """