mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
Refactor DCIM forms
This commit is contained in:
21
netbox/dcim/forms/formsets.py
Normal file
21
netbox/dcim/forms/formsets.py
Normal file
@ -0,0 +1,21 @@
|
||||
from django import forms
|
||||
|
||||
__all__ = (
|
||||
'BaseVCMemberFormSet',
|
||||
)
|
||||
|
||||
|
||||
class BaseVCMemberFormSet(forms.BaseModelFormSet):
|
||||
|
||||
def clean(self):
|
||||
super().clean()
|
||||
|
||||
# Check for duplicate VC position values
|
||||
vc_position_list = []
|
||||
for form in self.forms:
|
||||
vc_position = form.cleaned_data.get('vc_position')
|
||||
if vc_position:
|
||||
if vc_position in vc_position_list:
|
||||
error_msg = f"A virtual chassis member already exists in position {vc_position}."
|
||||
form.add_error('vc_position', error_msg)
|
||||
vc_position_list.append(vc_position)
|
Reference in New Issue
Block a user