Просмотр исходного кода

#17413: Distinguish platforms by manufacturer when bulk importing devices

Jeremy Stretch 6 месяцев назад
Родитель
Сommit
f17c1f115e
1 измененных файлов с 6 добавлено и 0 удалено
  1. 6 0
      netbox/dcim/forms/bulk_import.py

+ 6 - 0
netbox/dcim/forms/bulk_import.py

@@ -691,6 +691,12 @@ class DeviceImportForm(BaseDeviceImportForm):
                 })
                 })
             self.fields['rack'].queryset = self.fields['rack'].queryset.filter(**params)
             self.fields['rack'].queryset = self.fields['rack'].queryset.filter(**params)
 
 
+            # Limit platform queryset by manufacturer
+            params = {f"manufacturer__{self.fields['manufacturer'].to_field_name}": data.get('manufacturer')}
+            self.fields['platform'].queryset = self.fields['platform'].queryset.filter(
+                Q(**params) | Q(manufacturer=None)
+            )
+
             # Limit device bay queryset by parent device
             # Limit device bay queryset by parent device
             if parent := data.get('parent'):
             if parent := data.get('parent'):
                 params = {f"device__{self.fields['parent'].to_field_name}": parent}
                 params = {f"device__{self.fields['parent'].to_field_name}": parent}