From 74828e140989156c1829dda35dab259af1cc374e Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Tue, 11 Jul 2017 14:52:50 -0400 Subject: [PATCH] Fixes #1334: Fix server error when adding an interface to a device --- netbox/circuits/forms.py | 2 +- netbox/dcim/forms.py | 4 ++-- netbox/ipam/forms.py | 4 ++-- netbox/tenancy/forms.py | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/netbox/circuits/forms.py b/netbox/circuits/forms.py index c1ed007e2..d9954e55b 100644 --- a/netbox/circuits/forms.py +++ b/netbox/circuits/forms.py @@ -244,7 +244,7 @@ class CircuitTerminationForm(BootstrapMixin, ChainedFieldsMixin, forms.ModelForm # Initialize helper selectors instance = kwargs.get('instance') if instance and instance.interface is not None: - initial = kwargs.get('initial', {}) + initial = kwargs.get('initial', {}).copy() initial['rack'] = instance.interface.device.rack initial['device'] = instance.interface.device kwargs['initial'] = initial diff --git a/netbox/dcim/forms.py b/netbox/dcim/forms.py index 65f73c45f..3b596b5ae 100644 --- a/netbox/dcim/forms.py +++ b/netbox/dcim/forms.py @@ -630,7 +630,7 @@ class DeviceForm(BootstrapMixin, TenancyForm, CustomFieldForm): instance = kwargs.get('instance') # Using hasattr() instead of "is not None" to avoid RelatedObjectDoesNotExist on required field if instance and hasattr(instance, 'device_type'): - initial = kwargs.get('initial', {}) + initial = kwargs.get('initial', {}).copy() initial['manufacturer'] = instance.device_type.manufacturer kwargs['initial'] = initial @@ -1479,7 +1479,7 @@ class InterfaceCreateForm(DeviceComponentForm): def __init__(self, *args, **kwargs): # Set interfaces enabled by default - kwargs['initial'] = kwargs.get('initial', {}) + kwargs['initial'] = kwargs.get('initial', {}).copy() kwargs['initial'].update({'enabled': True}) super(InterfaceCreateForm, self).__init__(*args, **kwargs) diff --git a/netbox/ipam/forms.py b/netbox/ipam/forms.py index 7eb9a9599..f290335d2 100644 --- a/netbox/ipam/forms.py +++ b/netbox/ipam/forms.py @@ -217,7 +217,7 @@ class PrefixForm(BootstrapMixin, TenancyForm, CustomFieldForm): # Initialize helper selectors instance = kwargs.get('instance') - initial = kwargs.get('initial', {}) + initial = kwargs.get('initial', {}).copy() if instance and instance.vlan is not None: initial['vlan_group'] = instance.vlan.group kwargs['initial'] = initial @@ -492,7 +492,7 @@ class IPAddressForm(BootstrapMixin, TenancyForm, ReturnURLForm, CustomFieldForm) # Initialize helper selectors instance = kwargs.get('instance') - initial = kwargs.get('initial', {}) + initial = kwargs.get('initial', {}).copy() if instance and instance.interface is not None: initial['interface_site'] = instance.interface.device.site initial['interface_rack'] = instance.interface.device.rack diff --git a/netbox/tenancy/forms.py b/netbox/tenancy/forms.py index 9950abfc2..969050841 100644 --- a/netbox/tenancy/forms.py +++ b/netbox/tenancy/forms.py @@ -102,7 +102,7 @@ class TenancyForm(ChainedFieldsMixin, forms.Form): # Initialize helper selector instance = kwargs.get('instance') if instance and instance.tenant is not None: - initial = kwargs.get('initial', {}) + initial = kwargs.get('initial', {}).copy() initial['tenant_group'] = instance.tenant.group kwargs['initial'] = initial