You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Each Custom Object Type now gets its own tab with type-specific columns,
filterset sidebar, bulk actions, configure table, and HTMX pagination.
Refactored views into a package (combined.py, typed.py), reorganized
templates, renamed config keys (models→combined_models, etc.), expanded
test suite to 50 tests, and updated CHANGELOG/README/version.
@@ -58,26 +65,34 @@ Restart NetBox. No database migrations required.
58
65
59
66
## Configuration
60
67
61
-
| Setting | Default | Description |
62
-
|----------|---------|-------------|
63
-
|`models`|`['dcim.*', 'ipam.*', 'virtualization.*', 'tenancy.*', 'contacts.*']`| Models that get the Custom Objects tab. Accepts `app_label.model_name` strings **or**`app_label.*` wildcards to register every model in an app. |
64
-
|`label`|`'Custom Objects'`| Text displayed on the tab. |
65
-
|`weight`|`2000`| Controls tab position in the tab bar; lower values appear further left. |
68
+
| Setting | Default | Description |
69
+
|---------|---------|-------------|
70
+
|`combined_models`|`['dcim.*', 'ipam.*', 'virtualization.*', 'tenancy.*']`| Models that get the combined "Custom Objects" tab. Accepts `app_label.model_name` or `app_label.*` wildcards. |
71
+
|`combined_label`|`'Custom Objects'`| Text displayed on the combined tab. |
72
+
|`combined_weight`|`2000`| Tab position for the combined tab; lower = further left. |
73
+
|`typed_models`|`[]`| Models that get per-type tabs (opt-in, empty by default). Same format as `combined_models`. |
74
+
|`typed_weight`|`2100`| Tab position for all typed tabs. |
75
+
76
+
A model can appear in both `combined_models` and `typed_models` to get both tab styles.
0 commit comments