From f051c0e564c9aee0f6addc43a150bd4cdc047d2e Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Fri, 3 Mar 2017 11:19:19 -0500 Subject: [PATCH] Fixes #935: Fix form validation error when connecting an interface using live search --- netbox/dcim/forms.py | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/netbox/dcim/forms.py b/netbox/dcim/forms.py index 6c0dbc234..23cedae98 100644 --- a/netbox/dcim/forms.py +++ b/netbox/dcim/forms.py @@ -1468,19 +1468,13 @@ class InterfaceConnectionForm(BootstrapMixin, forms.ModelForm): ] # Initialize rack_b choices if site_b is set - if self.is_bound and self.data.get('site_b'): - self.fields['rack_b'].queryset = Rack.objects.filter(site__pk=self.data['site_b']) - elif self.initial.get('site_b'): + if self.initial.get('site_b'): self.fields['rack_b'].queryset = Rack.objects.filter(site=self.initial['site_b']) else: self.fields['rack_b'].choices = [] # Initialize device_b choices if rack_b or site_b is set - if self.is_bound and self.data.get('rack_b'): - self.fields['device_b'].queryset = Device.objects.filter(rack__pk=self.data['rack_b']) - elif self.is_bound and self.data.get('site_b'): - self.fields['device_b'].queryset = Device.objects.filter(site__pk=self.data['site_b'], rack__isnull=True) - elif self.initial.get('rack_b'): + if self.initial.get('rack_b'): self.fields['device_b'].queryset = Device.objects.filter(rack=self.initial['rack_b']) elif self.initial.get('site_b'): self.fields['device_b'].queryset = Device.objects.filter(site=self.initial['site_b'], rack__isnull=True) @@ -1488,13 +1482,7 @@ class InterfaceConnectionForm(BootstrapMixin, forms.ModelForm): self.fields['device_b'].choices = [] # Initialize interface_b choices if device_b is set - if self.is_bound: - device_b_interfaces = Interface.objects.filter(device=self.data['device_b']).exclude( - form_factor__in=VIRTUAL_IFACE_TYPES - ).select_related( - 'circuit_termination', 'connected_as_a', 'connected_as_b' - ) - elif self.initial.get('device_b'): + if self.initial.get('device_b'): device_b_interfaces = Interface.objects.filter(device=self.initial['device_b']).exclude( form_factor__in=VIRTUAL_IFACE_TYPES ).select_related(