Implemented bulk editing for sites

This commit is contained in:
Jeremy Stretch
2016-07-28 15:30:29 -04:00
parent b6e5bafd65
commit 6b41794e12
6 changed files with 45 additions and 4 deletions

View File

@@ -65,6 +65,7 @@ class SiteListView(ObjectListView):
filter = filters.SiteFilter
filter_form = forms.SiteFilterForm
table = tables.SiteTable
edit_permissions = ['dcim.change_rack', 'dcim.delete_rack']
template_name = 'dcim/site_list.html'
@@ -111,6 +112,23 @@ class SiteBulkImportView(PermissionRequiredMixin, BulkImportView):
obj_list_url = 'dcim:site_list'
class SiteBulkEditView(PermissionRequiredMixin, BulkEditView):
permission_required = 'dcim.change_site'
cls = Site
form = forms.SiteBulkEditForm
template_name = 'dcim/site_bulk_edit.html'
default_redirect_url = 'dcim:site_list'
def update_objects(self, pk_list, form):
fields_to_update = {}
for field in ['tenant']:
if form.cleaned_data[field]:
fields_to_update[field] = form.cleaned_data[field]
return self.cls.objects.filter(pk__in=pk_list).update(**fields_to_update)
#
# Rack groups
#