Fixes #1936: Trigger validation error when attempting to create a virtual chassis without specifying member positions

This commit is contained in:
Jeremy Stretch 2018-03-01 14:40:39 -05:00
parent 6b62720daf
commit bdecf7a3e3

View File

@ -2291,11 +2291,12 @@ class BaseVCMemberFormSet(forms.BaseModelFormSet):
# Check for duplicate VC position values # Check for duplicate VC position values
vc_position_list = [] vc_position_list = []
for form in self.forms: for form in self.forms:
vc_position = form.cleaned_data['vc_position'] vc_position = form.cleaned_data.get('vc_position')
if vc_position in vc_position_list: if vc_position:
error_msg = 'A virtual chassis member already exists in position {}.'.format(vc_position) if vc_position in vc_position_list:
form.add_error('vc_position', error_msg) error_msg = 'A virtual chassis member already exists in position {}.'.format(vc_position)
vc_position_list.append(vc_position) form.add_error('vc_position', error_msg)
vc_position_list.append(vc_position)
class DeviceVCMembershipForm(forms.ModelForm): class DeviceVCMembershipForm(forms.ModelForm):