Просмотр исходного кода

#19713: Fix duplicate changelog_message fields on bulk edit forms without fieldsets defined

Jeremy Stretch 6 месяцев назад
Родитель
Сommit
1f4bd88401
2 измененных файлов с 11 добавлено и 1 удалено
  1. 9 0
      netbox/netbox/forms/mixins.py
  2. 2 1
      netbox/templates/generic/bulk_edit.html

+ 9 - 0
netbox/netbox/forms/mixins.py

@@ -23,6 +23,15 @@ class ChangelogMessageMixin(forms.Form):
         max_length=200
     )
 
+    def __init__(self, *args, **kwargs):
+        super().__init__(*args, **kwargs)
+
+        # Declare changelog_message a meta field
+        if hasattr(self, 'meta_fields'):
+            self.meta_fields.append('changelog_message')
+        else:
+            self.meta_fields = ['changelog_message']
+
 
 class CustomFieldsMixin:
     """

+ 2 - 1
netbox/templates/generic/bulk_edit.html

@@ -93,7 +93,8 @@ Context:
 
           {# Render all fields #}
           {% for field in form.visible_fields %}
-            {% if field.name in form.nullable_fields %}
+            {% if field.name in form.meta_fields %}
+            {% elif field.name in form.nullable_fields %}
               {% render_field field bulk_nullable=True %}
             {% else %}
               {% render_field field %}