From 6dfa90469905170b6b4c34e245cf5ee973dd2411 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Fri, 22 Dec 2023 09:52:24 -0500 Subject: [PATCH] Misc cleanup --- netbox/extras/validators.py | 2 +- netbox/netbox/api/serializers/base.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/netbox/extras/validators.py b/netbox/extras/validators.py index e80598044..366d3a426 100644 --- a/netbox/extras/validators.py +++ b/netbox/extras/validators.py @@ -84,7 +84,7 @@ class CustomValidator: # Attempt to resolve many-to-many fields to their stored values m2m_fields = [f.name for f in instance._meta.local_many_to_many] if name in m2m_fields: - if name in instance._m2m_values: + if name in getattr(instance, '_m2m_values', []): return instance._m2m_values[name] if instance.pk: return list(getattr(instance, name).all()) diff --git a/netbox/netbox/api/serializers/base.py b/netbox/netbox/api/serializers/base.py index b2809cf3d..d513c8000 100644 --- a/netbox/netbox/api/serializers/base.py +++ b/netbox/netbox/api/serializers/base.py @@ -23,9 +23,9 @@ class ValidatedModelSerializer(BaseModelSerializer): validation. (DRF does not do this by default; see https://github.com/encode/django-rest-framework/issues/3144) """ def validate(self, data): - - # Remove custom fields data (if any) prior to model validation attrs = data.copy() + + # Remove custom field data (if any) prior to model validation attrs.pop('custom_fields', None) # Skip ManyToManyFields