diff --git a/docs/dcim.md b/docs/dcim.md index 99fc31653..0b42cc6d9 100644 --- a/docs/dcim.md +++ b/docs/dcim.md @@ -59,12 +59,12 @@ Note that assignment of components from templates occurs only at the time of dev # Devices -Every piece of hardware which is installed within a rack exists in NetBox as a device. Devices are measured in rack units (U) and whether they are full depth. 0U devices which can be installed in a rack but don't consume vertical rack space (such as a vertically-mounted power distribution unit) can also be defined. +Every piece of hardware which is installed within a rack exists in NetBox as a device. Devices are measured in rack units (U) and depth. 0U devices which can be installed in a rack but don't consume vertical rack space (such as a vertically-mounted power distribution unit) can also be defined. + +When assigning a multi-U device to a rack, it is considered to be mounted in the lowest-numbered rack unit which it occupies. For example, a 3U device which occupies U8 through U10 shows as being mounted in U8. A device is said to be "full depth" if its installation on one rack face prevents the installation of any other device on the opposite face within the same rack unit(s). This could be either because the device is physically too deep to allow a device behind it, or because the installation of an opposing device would impede air flow. -Each device has a physical device type (make and model), which is discussed below. - ### Roles NetBox allows for the definition of arbitrary device roles by which devices can be organized. For example, you might create roles for core switches, distribution switches, and access switches. In the interest of simplicity, device can only belong to one device role. diff --git a/netbox/dcim/forms.py b/netbox/dcim/forms.py index e9b2f9dac..65b6e77cb 100644 --- a/netbox/dcim/forms.py +++ b/netbox/dcim/forms.py @@ -326,10 +326,10 @@ class DeviceForm(forms.ModelForm, BootstrapMixin): display_field='display_name', attrs={'filter-for': 'position'} )) - position = forms.TypedChoiceField(required=False, empty_value=None, widget=APISelect( - api_url='/api/dcim/racks/{{rack}}/rack-units/?face={{face}}', - disabled_indicator='device', - )) + position = forms.TypedChoiceField(required=False, empty_value=None, + help_text="For multi-U devices, this is the lowest occupied rack unit.", + widget=APISelect(api_url='/api/dcim/racks/{{rack}}/rack-units/?face={{face}}', + disabled_indicator='device')) manufacturer = forms.ModelChoiceField(queryset=Manufacturer.objects.all(), widget=forms.Select(attrs={'filter-for': 'device_type'})) device_type = forms.ModelChoiceField(queryset=DeviceType.objects.all(), label='Model', widget=APISelect( diff --git a/netbox/templates/dcim/device_import.html b/netbox/templates/dcim/device_import.html index db048c39d..bcc2d0710 100644 --- a/netbox/templates/dcim/device_import.html +++ b/netbox/templates/dcim/device_import.html @@ -68,7 +68,7 @@ Position (U) - Numeric rack position (optional) + Lowest rack unit occupied by the device (optional) 21