Skip to content

Commit 5e2dbde

Browse files
committed
Fixes #20776: Address review feedback on bulk rename changelog
- Add explanatory comment on base_fields.pop() safety - Add skipTest guard for models without ChangeLoggingMixin
1 parent 063bad0 commit 5e2dbde

2 files changed

Lines changed: 4 additions & 1 deletion

File tree

netbox/netbox/views/generic/bulk_views.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -891,7 +891,8 @@ class _Form(BulkRenameForm):
891891

892892
self.form = _Form
893893

894-
# Remove changelog_message field if model doesn't support change logging
894+
# Remove changelog_message field if model doesn't support change logging.
895+
# Mutating base_fields is safe here because _Form is created fresh per request above.
895896
if not issubclass(self.queryset.model, ChangeLoggingMixin):
896897
self.form.base_fields.pop('changelog_message', None)
897898

netbox/utilities/testing/views.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1051,6 +1051,8 @@ def test_bulk_rename_objects_with_permission(self):
10511051

10521052
@override_settings(EXEMPT_VIEW_PERMISSIONS=['*'])
10531053
def test_bulk_rename_objects_with_changelog_message(self):
1054+
if not issubclass(self.model, ChangeLoggingMixin):
1055+
self.skipTest("Model does not support change logging")
10541056
objects = self._get_queryset().all()[:3]
10551057
pk_list = [obj.pk for obj in objects]
10561058
data = {

0 commit comments

Comments
 (0)