From 55b3e4eeb3a1bd0e80822a47f6c6a7f46af82c49 Mon Sep 17 00:00:00 2001 From: jeremystretch Date: Fri, 8 Jul 2022 14:16:42 -0400 Subject: [PATCH] Fixes #9682: Fix bulk assignment of ASNs to sites --- docs/release-notes/version-3.2.md | 1 + netbox/netbox/views/generic/bulk_views.py | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/version-3.2.md b/docs/release-notes/version-3.2.md index 57d965538..3bd3773cf 100644 --- a/docs/release-notes/version-3.2.md +++ b/docs/release-notes/version-3.2.md @@ -14,6 +14,7 @@ * [#8854](https://github.com/netbox-community/netbox/issues/8854) - Fix `REMOTE_AUTH_DEFAULT_GROUPS` for social-auth backends * [#9575](https://github.com/netbox-community/netbox/issues/9575) - Fix AttributeError exception for FHRP group with an IP address assigned * [#9597](https://github.com/netbox-community/netbox/issues/9597) - Include `installed_module` in module bay REST API serializer +* [#9682](https://github.com/netbox-community/netbox/issues/9682) - Fix bulk assignment of ASNs to sites --- diff --git a/netbox/netbox/views/generic/bulk_views.py b/netbox/netbox/views/generic/bulk_views.py index 96efc0de7..5bdf5cbc9 100644 --- a/netbox/netbox/views/generic/bulk_views.py +++ b/netbox/netbox/views/generic/bulk_views.py @@ -8,6 +8,7 @@ from django.contrib.contenttypes.models import ContentType from django.core.exceptions import FieldDoesNotExist, ValidationError from django.db import transaction, IntegrityError from django.db.models import ManyToManyField, ProtectedError +from django.db.models.fields.reverse_related import ManyToManyRel from django.forms import Form, ModelMultipleChoiceField, MultipleHiddenInput from django.http import HttpResponse from django.shortcuts import get_object_or_404, redirect, render @@ -484,7 +485,7 @@ class BulkEditView(GetReturnURLMixin, BaseMultiObjectView): setattr(obj, name, None if model_field.null else '') # ManyToManyFields - elif isinstance(model_field, ManyToManyField): + elif isinstance(model_field, (ManyToManyField, ManyToManyRel)): if form.cleaned_data[name]: getattr(obj, name).set(form.cleaned_data[name]) # Normal fields