mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
Closes #4807: Add bulk edit ability for device bay templates
This commit is contained in:
@ -18,6 +18,7 @@ NetBox v2.9 replaces Django's built-in permissions framework with one that suppo
|
|||||||
* [#4792](https://github.com/netbox-community/netbox/issues/4792) - Add bulk rename capability for console and power ports
|
* [#4792](https://github.com/netbox-community/netbox/issues/4792) - Add bulk rename capability for console and power ports
|
||||||
* [#4793](https://github.com/netbox-community/netbox/issues/4793) - Add `description` field to device component templates
|
* [#4793](https://github.com/netbox-community/netbox/issues/4793) - Add `description` field to device component templates
|
||||||
* [#4795](https://github.com/netbox-community/netbox/issues/4795) - Add bulk disconnect capability for console and power ports
|
* [#4795](https://github.com/netbox-community/netbox/issues/4795) - Add bulk disconnect capability for console and power ports
|
||||||
|
* [#4807](https://github.com/netbox-community/netbox/issues/4807) - Add bulk edit ability for device bay templates
|
||||||
|
|
||||||
### Configuration Changes
|
### Configuration Changes
|
||||||
|
|
||||||
|
@ -1486,15 +1486,17 @@ class DeviceBayTemplateCreateForm(ComponentTemplateCreateForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
# TODO: DeviceBayTemplate has no fields suitable for bulk-editing yet
|
class DeviceBayTemplateBulkEditForm(BootstrapMixin, BulkEditForm):
|
||||||
# class DeviceBayTemplateBulkEditForm(BootstrapMixin, BulkEditForm):
|
pk = forms.ModelMultipleChoiceField(
|
||||||
# pk = forms.ModelMultipleChoiceField(
|
queryset=DeviceBayTemplate.objects.all(),
|
||||||
# queryset=FrontPortTemplate.objects.all(),
|
widget=forms.MultipleHiddenInput()
|
||||||
# widget=forms.MultipleHiddenInput()
|
)
|
||||||
# )
|
description = forms.CharField(
|
||||||
#
|
required=False
|
||||||
# class Meta:
|
)
|
||||||
# nullable_fields = ()
|
|
||||||
|
class Meta:
|
||||||
|
nullable_fields = ('description',)
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -813,14 +813,7 @@ class RearPortTemplateTestCase(ViewTestCases.DeviceComponentTemplateViewTestCase
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# TODO: Change base class to DeviceComponentTemplateViewTestCase
|
class DeviceBayTemplateTestCase(ViewTestCases.DeviceComponentTemplateViewTestCase):
|
||||||
# Blocked by absence of bulk edit view for DeviceBays
|
|
||||||
class DeviceBayTemplateTestCase(
|
|
||||||
ViewTestCases.EditObjectViewTestCase,
|
|
||||||
ViewTestCases.DeleteObjectViewTestCase,
|
|
||||||
ViewTestCases.BulkCreateObjectsViewTestCase,
|
|
||||||
ViewTestCases.BulkDeleteObjectsViewTestCase
|
|
||||||
):
|
|
||||||
model = DeviceBayTemplate
|
model = DeviceBayTemplate
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@ -848,6 +841,10 @@ class DeviceBayTemplateTestCase(
|
|||||||
'name_pattern': 'Device Bay Template [4-6]',
|
'name_pattern': 'Device Bay Template [4-6]',
|
||||||
}
|
}
|
||||||
|
|
||||||
|
cls.bulk_edit_data = {
|
||||||
|
'description': 'Foo bar',
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
class DeviceRoleTestCase(ViewTestCases.OrganizationalObjectViewTestCase):
|
class DeviceRoleTestCase(ViewTestCases.OrganizationalObjectViewTestCase):
|
||||||
model = DeviceRole
|
model = DeviceRole
|
||||||
|
@ -142,7 +142,7 @@ urlpatterns = [
|
|||||||
|
|
||||||
# Device bay templates
|
# Device bay templates
|
||||||
path('device-bay-templates/add/', views.DeviceBayTemplateCreateView.as_view(), name='devicebaytemplate_add'),
|
path('device-bay-templates/add/', views.DeviceBayTemplateCreateView.as_view(), name='devicebaytemplate_add'),
|
||||||
# path('device-bay-templates/edit/', views.DeviceBayTemplateBulkEditView.as_view(), name='devicebaytemplate_bulk_edit'),
|
path('device-bay-templates/edit/', views.DeviceBayTemplateBulkEditView.as_view(), name='devicebaytemplate_bulk_edit'),
|
||||||
path('device-bay-templates/delete/', views.DeviceBayTemplateBulkDeleteView.as_view(), name='devicebaytemplate_bulk_delete'),
|
path('device-bay-templates/delete/', views.DeviceBayTemplateBulkDeleteView.as_view(), name='devicebaytemplate_bulk_delete'),
|
||||||
path('device-bay-templates/<int:pk>/edit/', views.DeviceBayTemplateEditView.as_view(), name='devicebaytemplate_edit'),
|
path('device-bay-templates/<int:pk>/edit/', views.DeviceBayTemplateEditView.as_view(), name='devicebaytemplate_edit'),
|
||||||
path('device-bay-templates/<int:pk>/delete/', views.DeviceBayTemplateDeleteView.as_view(), name='devicebaytemplate_delete'),
|
path('device-bay-templates/<int:pk>/delete/', views.DeviceBayTemplateDeleteView.as_view(), name='devicebaytemplate_delete'),
|
||||||
|
@ -867,10 +867,10 @@ class DeviceBayTemplateDeleteView(ObjectDeleteView):
|
|||||||
queryset = DeviceBayTemplate.objects.all()
|
queryset = DeviceBayTemplate.objects.all()
|
||||||
|
|
||||||
|
|
||||||
# class DeviceBayTemplateBulkEditView(BulkEditView):
|
class DeviceBayTemplateBulkEditView(BulkEditView):
|
||||||
# queryset = DeviceBayTemplate.objects.all()
|
queryset = DeviceBayTemplate.objects.all()
|
||||||
# table = tables.DeviceBayTemplateTable
|
table = tables.DeviceBayTemplateTable
|
||||||
# form = forms.DeviceBayTemplateBulkEditForm
|
form = forms.DeviceBayTemplateBulkEditForm
|
||||||
|
|
||||||
|
|
||||||
class DeviceBayTemplateBulkDeleteView(BulkDeleteView):
|
class DeviceBayTemplateBulkDeleteView(BulkDeleteView):
|
||||||
|
@ -173,7 +173,7 @@
|
|||||||
{% if devicetype.is_parent_device or devicebay_table.rows %}
|
{% if devicetype.is_parent_device or devicebay_table.rows %}
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
{% include 'dcim/inc/devicetype_component_table.html' with table=devicebay_table title='Device Bays' add_url='dcim:devicebaytemplate_add' edit_url=None delete_url='dcim:devicebaytemplate_bulk_delete' %}
|
{% include 'dcim/inc/devicetype_component_table.html' with table=devicebay_table title='Device Bays' add_url='dcim:devicebaytemplate_add' edit_url='dcim:devicebaytemplate_bulk_edit' delete_url='dcim:devicebaytemplate_bulk_delete' %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
Reference in New Issue
Block a user