Fixed
- Attachments never appeared on Custom Object detail pages when
netbox_attachmentswas listed beforenetbox_custom_objectsinPLUGINS(issue #110). Template extensions were built while this plugin'sready()ran, butnetbox_custom_objectswithholds its dynamically generated models until its ownready()has finished, so model discovery found nothing and no panel was ever registered — regardless ofscope_filter. Custom objects are now served by a single, globally registered template extension that resolves the object at render time, so plugin order inPLUGINSno longer matters. - Custom Object Types created after startup now get an attachment panel without restarting NetBox. Previously the model list was enumerated once during startup, so any type created later was invisible until the next restart.
Added
- Startup warning (Django system check
netbox_attachments.W001–W003) whenPLUGINS_CONFIG["netbox_attachments"]still containsapps,allowed_models, ormode. These were replaced byscope_filterandapplied_scopein v7.1.0, and NetBox keeps unknown keys without reading them, so a stale config silently fell back to the defaultscope_filter— which covers several core apps, making the configuration look partly honored (issue #110). The check names the replacement setting; runmanage.py checkto see it.
Changed
- Custom object models are no longer enumerated at startup, removing this plugin's own database access during app loading and its dependency on
PLUGINSordering. (apps.get_models()is still called, sonetbox_custom_objectsmay itself query when it loads first — but the plugin no longer drives that.) display_settingnow accepts the same identifier for custom objects thatscope_filterdoes —netbox_custom_objects.<custom_object_type_name>. It previously keyed off the internal, primary-key-derived model name (netbox_custom_objects.table12model), so the documented identifier silently never matched and per-type display overrides had no effect.
Full changelog: https://github.com/Kani999/netbox-attachments/blob/v11.3.0/CHANGELOG.md