Răsfoiți Sursa

Closes #13426: Register all model features in the registry

Jeremy Stretch 2 ani în urmă
părinte
comite
4e8a3e0a6f
1 a modificat fișierele cu 11 adăugiri și 1 ștergeri
  1. 11 1
      netbox/netbox/models/features.py

+ 11 - 1
netbox/netbox/models/features.py

@@ -525,11 +525,20 @@ class SyncedDataMixin(models.Model):
         raise NotImplementedError(f"{self.__class__} must implement a sync_data() method.")
 
 
+#
+# Feature registration
+#
+
 FEATURES_MAP = {
     'bookmarks': BookmarksMixin,
+    'change_logging': ChangeLoggingMixin,
+    'cloning': CloningMixin,
+    'contacts': ContactsMixin,
     'custom_fields': CustomFieldsMixin,
     'custom_links': CustomLinksMixin,
+    'custom_validation': CustomValidationMixin,
     'export_templates': ExportTemplatesMixin,
+    'image_attachments': ImageAttachmentsMixin,
     'jobs': JobsMixin,
     'journaling': JournalingMixin,
     'synced_data': SyncedDataMixin,
@@ -544,12 +553,13 @@ registry['model_features'].update({
 
 @receiver(class_prepared)
 def _register_features(sender, **kwargs):
+    # Record each applicable feature for the model in the registry
     features = {
         feature for feature, cls in FEATURES_MAP.items() if issubclass(sender, cls)
     }
     register_features(sender, features)
 
-    # Feature view registration
+    # Register applicable feature views for the model
     if issubclass(sender, JournalingMixin):
         register_model_view(
             sender,