1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Add bulk creation view for rear ports

This commit is contained in:
Jeremy Stretch
2020-04-22 11:26:04 -04:00
parent 97b8e73716
commit 62cdf0d928
4 changed files with 94 additions and 69 deletions

View File

@@ -3304,6 +3304,50 @@ class FrontPortCreateForm(BootstrapMixin, forms.Form):
}
# class FrontPortBulkCreateForm(
# form_from_model(FrontPort, ['type', 'description', 'tags']),
# DeviceBulkAddComponentForm
# ):
# tags = TagField(
# required=False
# )
class FrontPortBulkEditForm(BootstrapMixin, AddRemoveTagsForm, BulkEditForm):
pk = forms.ModelMultipleChoiceField(
queryset=FrontPort.objects.all(),
widget=forms.MultipleHiddenInput()
)
type = forms.ChoiceField(
choices=add_blank_choice(PortTypeChoices),
required=False,
widget=StaticSelect2()
)
description = forms.CharField(
max_length=100,
required=False
)
class Meta:
nullable_fields = [
'description',
]
class FrontPortBulkRenameForm(BulkRenameForm):
pk = forms.ModelMultipleChoiceField(
queryset=FrontPort.objects.all(),
widget=forms.MultipleHiddenInput
)
class FrontPortBulkDisconnectForm(ConfirmationForm):
pk = forms.ModelMultipleChoiceField(
queryset=FrontPort.objects.all(),
widget=forms.MultipleHiddenInput
)
class FrontPortCSVForm(forms.ModelForm):
device = FlexibleModelChoiceField(
queryset=Device.objects.all(),
@@ -3352,50 +3396,6 @@ class FrontPortCSVForm(forms.ModelForm):
self.fields['rear_port'].queryset = RearPort.objects.none()
# class FrontPortBulkCreateForm(
# form_from_model(FrontPort, ['type', 'description', 'tags']),
# DeviceBulkAddComponentForm
# ):
# tags = TagField(
# required=False
# )
class FrontPortBulkEditForm(BootstrapMixin, AddRemoveTagsForm, BulkEditForm):
pk = forms.ModelMultipleChoiceField(
queryset=FrontPort.objects.all(),
widget=forms.MultipleHiddenInput()
)
type = forms.ChoiceField(
choices=add_blank_choice(PortTypeChoices),
required=False,
widget=StaticSelect2()
)
description = forms.CharField(
max_length=100,
required=False
)
class Meta:
nullable_fields = [
'description',
]
class FrontPortBulkRenameForm(BulkRenameForm):
pk = forms.ModelMultipleChoiceField(
queryset=FrontPort.objects.all(),
widget=forms.MultipleHiddenInput
)
class FrontPortBulkDisconnectForm(ConfirmationForm):
pk = forms.ModelMultipleChoiceField(
queryset=FrontPort.objects.all(),
widget=forms.MultipleHiddenInput
)
#
# Rear pass-through ports
#
@@ -3448,31 +3448,13 @@ class RearPortCreateForm(BootstrapMixin, forms.Form):
)
class RearPortCSVForm(forms.ModelForm):
device = FlexibleModelChoiceField(
queryset=Device.objects.all(),
to_field_name='name',
help_text='Name or ID of device',
error_messages={
'invalid_choice': 'Device not found.',
}
class RearPortBulkCreateForm(
form_from_model(RearPort, ['type', 'positions', 'description', 'tags']),
DeviceBulkAddComponentForm
):
tags = TagField(
required=False
)
type = CSVChoiceField(
choices=PortTypeChoices,
)
class Meta:
model = RearPort
fields = RearPort.csv_headers
# class RearPortBulkCreateForm(
# form_from_model(RearPort, ['type', 'positions', 'description', 'tags']),
# DeviceBulkAddComponentForm
# ):
# tags = TagField(
# required=False
# )
class RearPortBulkEditForm(BootstrapMixin, AddRemoveTagsForm, BulkEditForm):
@@ -3510,6 +3492,24 @@ class RearPortBulkDisconnectForm(ConfirmationForm):
)
class RearPortCSVForm(forms.ModelForm):
device = FlexibleModelChoiceField(
queryset=Device.objects.all(),
to_field_name='name',
help_text='Name or ID of device',
error_messages={
'invalid_choice': 'Device not found.',
}
)
type = CSVChoiceField(
choices=PortTypeChoices,
)
class Meta:
model = RearPort
fields = RearPort.csv_headers
#
# Cables
#