mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
#4416: Add bulk edit & delete views for VirtualChassis
This commit is contained in:
@ -4388,6 +4388,20 @@ class VCMemberSelectForm(BootstrapMixin, forms.Form):
|
||||
return device
|
||||
|
||||
|
||||
class VirtualChassisBulkEditForm(BootstrapMixin, BulkEditForm):
|
||||
pk = forms.ModelMultipleChoiceField(
|
||||
queryset=VirtualChassis.objects.all(),
|
||||
widget=forms.MultipleHiddenInput()
|
||||
)
|
||||
domain = forms.CharField(
|
||||
max_length=30,
|
||||
required=False
|
||||
)
|
||||
|
||||
class Meta:
|
||||
nullable_fields = ['domain']
|
||||
|
||||
|
||||
class VirtualChassisFilterForm(BootstrapMixin, CustomFieldFilterForm):
|
||||
model = VirtualChassis
|
||||
q = forms.CharField(
|
||||
|
@ -1507,10 +1507,7 @@ class VirtualChassisTestCase(ViewTestCases.PrimaryObjectViewTestCase):
|
||||
model = VirtualChassis
|
||||
|
||||
# Disable inapplicable tests
|
||||
test_get_object = None
|
||||
test_import_objects = None
|
||||
test_bulk_edit_objects = None
|
||||
test_bulk_delete_objects = None
|
||||
|
||||
# TODO: Requires special form handling
|
||||
test_create_object = None
|
||||
|
@ -321,6 +321,8 @@ urlpatterns = [
|
||||
# Virtual chassis
|
||||
path('virtual-chassis/', views.VirtualChassisListView.as_view(), name='virtualchassis_list'),
|
||||
path('virtual-chassis/add/', views.VirtualChassisCreateView.as_view(), name='virtualchassis_add'),
|
||||
path('virtual-chassis/edit/', views.VirtualChassisBulkEditView.as_view(), name='virtualchassis_bulk_edit'),
|
||||
path('virtual-chassis/delete/', views.VirtualChassisBulkDeleteView.as_view(), name='virtualchassis_bulk_delete'),
|
||||
path('virtual-chassis/<int:pk>/', views.VirtualChassisView.as_view(), name='virtualchassis'),
|
||||
path('virtual-chassis/<int:pk>/edit/', views.VirtualChassisEditView.as_view(), name='virtualchassis_edit'),
|
||||
path('virtual-chassis/<int:pk>/delete/', views.VirtualChassisDeleteView.as_view(), name='virtualchassis_delete'),
|
||||
|
@ -2605,6 +2605,23 @@ class VirtualChassisRemoveMemberView(PermissionRequiredMixin, GetReturnURLMixin,
|
||||
})
|
||||
|
||||
|
||||
class VirtualChassisBulkEditView(PermissionRequiredMixin, BulkEditView):
|
||||
permission_required = 'dcim.change_virtualchassis'
|
||||
queryset = VirtualChassis.objects.all()
|
||||
filterset = filters.VirtualChassisFilterSet
|
||||
table = tables.VirtualChassisTable
|
||||
form = forms.VirtualChassisBulkEditForm
|
||||
default_return_url = 'dcim:virtualchassis_list'
|
||||
|
||||
|
||||
class VirtualChassisBulkDeleteView(PermissionRequiredMixin, BulkDeleteView):
|
||||
permission_required = 'dcim.delete_virtualchassis'
|
||||
queryset = VirtualChassis.objects.all()
|
||||
filterset = filters.VirtualChassisFilterSet
|
||||
table = tables.VirtualChassisTable
|
||||
default_return_url = 'dcim:virtualchassis_list'
|
||||
|
||||
|
||||
#
|
||||
# Power panels
|
||||
#
|
||||
|
Reference in New Issue
Block a user