Custom Links Filter not working as in 2.6 #3552

Closed
opened 2025-12-29 18:29:50 +01:00 by adam · 2 comments
Owner

Originally created by @chas0rde on GitHub (Apr 8, 2020).

Environment

  • Python version: 3.6.9
  • NetBox version: 2.7.11

Steps to Reproduce

  1. Add custom link applied to devices
  2. Set Text as follows:
    {% if obj.status == 1 and obj.asset_tag %}Open management{% endif %}
  3. Set some URL

Expected Behavior

Devices with asset tag set and status 1 (active) should render the link

Observed Behavior

No link rendered.
If instead filter is set as follows it works (but this is not really the same filter as it matches other obj.status than 1 as well)
{% if obj.status and obj.asset_tag %}Open management{% endif %}

Originally created by @chas0rde on GitHub (Apr 8, 2020). <!-- NOTE: IF YOUR ISSUE DOES NOT FOLLOW THIS TEMPLATE, IT WILL BE CLOSED. This form is only for reproducible bugs. If you need assistance with NetBox installation, or if you have a general question, DO NOT open an issue. Instead, post to our mailing list: https://groups.google.com/forum/#!forum/netbox-discuss Please describe the environment in which you are running NetBox. Be sure that you are running an unmodified instance of the latest stable release before submitting a bug report. --> ### Environment * Python version: 3.6.9 * NetBox version: 2.7.11 <!-- Describe in detail the exact steps that someone else can take to reproduce this bug using the current stable release of NetBox (or the current beta release where applicable). Begin with the creation of any necessary database objects and call out every operation being performed explicitly. If reporting a bug in the REST API, be sure to reconstruct the raw HTTP request(s) being made: Don't rely on a wrapper like pynetbox. --> ### Steps to Reproduce 1. Add custom link applied to devices 2. Set **Text** as follows: `{% if obj.status == 1 and obj.asset_tag %}Open management{% endif %}` 3. Set some URL <!-- What did you expect to happen? --> ### Expected Behavior Devices with asset tag set and status 1 (active) should render the link <!-- What happened instead? --> ### Observed Behavior No link rendered. If instead filter is set as follows it works (but this is not really the same filter as it matches other obj.status than 1 as well) `{% if obj.status and obj.asset_tag %}Open management{% endif %}`
adam closed this issue 2025-12-29 18:29:50 +01:00
Author
Owner

@jeremystretch commented on GitHub (Apr 8, 2020):

Choice field values were changed from integers to strings in v2.7. Please see the v2.7 release notes.

{% if obj.status == 'active' and obj.asset_tag %}
@jeremystretch commented on GitHub (Apr 8, 2020): Choice field values were changed from integers to strings in v2.7. Please see the v2.7 release notes. ``` {% if obj.status == 'active' and obj.asset_tag %} ```
Author
Owner

@chas0rde commented on GitHub (Apr 8, 2020):

I was pretty sure that I tried that as well and it didn't work but I can verify that this works.
Maybe the documentation (https://netbox.readthedocs.io/en/stable/additional-features/custom-links/) should be updated accordingly as the example states the old syntax

Thanks for the quick reply :)

@chas0rde commented on GitHub (Apr 8, 2020): I was pretty sure that I tried that as well and it didn't work but I can verify that this works. Maybe the documentation (https://netbox.readthedocs.io/en/stable/additional-features/custom-links/) should be updated accordingly as the example states the old syntax Thanks for the quick reply :)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#3552