From 601a7092e0fa6aa18f0c677cd08dbce5dc414ab6 Mon Sep 17 00:00:00 2001 From: Arthur Date: Thu, 15 Jan 2026 09:20:38 -0800 Subject: [PATCH] #20383 clear rack face if no rack on edit --- netbox/dcim/forms/model_forms.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/netbox/dcim/forms/model_forms.py b/netbox/dcim/forms/model_forms.py index 69bd7d5cd..dd6d3ab34 100644 --- a/netbox/dcim/forms/model_forms.py +++ b/netbox/dcim/forms/model_forms.py @@ -722,6 +722,16 @@ class DeviceForm(TenancyForm, PrimaryModelForm): if position: self.fields['position'].widget.choices = [(position, f'U{position}')] + def clean(self): + super().clean() + + # If rack is cleared, also clear position and face + if not self.cleaned_data.get('rack'): + self.cleaned_data['position'] = None + self.cleaned_data['face'] = '' + + return self.cleaned_data + class ModuleForm(ModuleCommonForm, PrimaryModelForm): device = DynamicModelChoiceField(