NetBox Edition
NetBox Community
NetBox Version
v4.5.7
Python Version
3.12
Steps to Reproduce
- Install any plugin that registers a PluginTemplateExtension with a left_page() method for ipam.vrf.
- Upgrade NetBox from v4.5.5 to v4.5.6 or later.
- Open any VRF detail page in the web UI.
Expected Behavior
The plugin card renders in the left column of the VRF detail page, as it did in v4.5.5.
Observed Behavior
The card does not appear. The plugin's registration is otherwise working; the same extension still renders for models whose views use SimpleLayout.
PR #21695 (tracking NB-2115) ported VRFView and RouteTargetView from {% plugin_left_page object %} to explicit netbox.ui.layout.Layout(...) instances. SimpleLayout auto-injects PluginContentPanel('left_page'/'right_page'/'full_width_page'), but views built with Layout directly have to add those panels themselves, and not all of them do.
Broken in v4.5.7:
ipam.views.VRFView (netbox/ipam/views.py:51)
ipam.views.RouteTargetView (netbox/ipam/views.py:165)
core.views.DataFileView (netbox/core/views.py:186)
core.views.ConfigRevisionView (netbox/core/views.py:389)
core.views.JobLogView (netbox/core/views.py:250, sub-tab, possibly intentional)
Reference for correct usage: vpn.views.L2VPNView (netbox/vpn/views.py:650) and core.views.ObjectChangeView (netbox/core/views.py:298).
Ref.: #21911
NetBox Edition
NetBox Community
NetBox Version
v4.5.7
Python Version
3.12
Steps to Reproduce
Expected Behavior
The plugin card renders in the left column of the VRF detail page, as it did in v4.5.5.
Observed Behavior
The card does not appear. The plugin's registration is otherwise working; the same extension still renders for models whose views use
SimpleLayout.PR #21695 (tracking NB-2115) ported
VRFViewandRouteTargetViewfrom{% plugin_left_page object %}to explicitnetbox.ui.layout.Layout(...)instances.SimpleLayoutauto-injectsPluginContentPanel('left_page'/'right_page'/'full_width_page'), but views built withLayoutdirectly have to add those panels themselves, and not all of them do.Broken in v4.5.7:
ipam.views.VRFView(netbox/ipam/views.py:51)ipam.views.RouteTargetView(netbox/ipam/views.py:165)core.views.DataFileView(netbox/core/views.py:186)core.views.ConfigRevisionView(netbox/core/views.py:389)core.views.JobLogView(netbox/core/views.py:250, sub-tab, possibly intentional)Reference for correct usage:
vpn.views.L2VPNView(netbox/vpn/views.py:650) andcore.views.ObjectChangeView(netbox/core/views.py:298).Ref.: #21911