Browse Source

Closes #685: When assigning an IP to a device, automaitcally select the interface if only one exists

Jeremy Stretch 8 years ago
parent
commit
18a516ee53
1 changed files with 7 additions and 2 deletions
  1. 7 2
      netbox/dcim/forms.py

+ 7 - 2
netbox/dcim/forms.py

@@ -1252,10 +1252,15 @@ class IPAddressForm(BootstrapMixin, CustomFieldForm):
 
         self.fields['vrf'].empty_label = 'Global'
 
-        self.fields['interface'].queryset = device.interfaces.all()
+        interfaces = device.interfaces.all()
+        self.fields['interface'].queryset = interfaces
         self.fields['interface'].required = True
 
-        # If this device does not have any IP addresses assigned, default to setting the first IP as its primary
+        # If this device has only one interface, select it by default.
+        if len(interfaces) == 1:
+            self.fields['interface'].initial = interfaces[0]
+
+        # If this device does not have any IP addresses assigned, default to setting the first IP as its primary.
         if not IPAddress.objects.filter(interface__device=device).count():
             self.fields['set_as_primary'].initial = True