diff --git a/netbox/dcim/forms.py b/netbox/dcim/forms.py index c5243d904..b667b829e 100644 --- a/netbox/dcim/forms.py +++ b/netbox/dcim/forms.py @@ -72,6 +72,13 @@ class SiteImportForm(BulkImportForm, BootstrapMixin): # Rack groups # +class RackGroupForm(forms.ModelForm, BootstrapMixin): + + class Meta: + model = RackGroup + fields = ['site', 'name', 'slug'] + + class RackGroupBulkDeleteForm(ConfirmationForm): pk = forms.ModelMultipleChoiceField(queryset=RackGroup.objects.all(), widget=forms.MultipleHiddenInput) diff --git a/netbox/dcim/views.py b/netbox/dcim/views.py index 7cec5db57..d43a5b9d4 100644 --- a/netbox/dcim/views.py +++ b/netbox/dcim/views.py @@ -23,8 +23,8 @@ from utilities.views import ObjectListView, BulkImportView, BulkEditView, BulkDe from .filters import RackGroupFilter, RackFilter, DeviceTypeFilter, DeviceFilter, ConsoleConnectionFilter, \ PowerConnectionFilter, InterfaceConnectionFilter -from .forms import SiteForm, SiteImportForm, RackGroupFilterForm, RackGroupBulkDeleteForm, RackForm, RackImportForm, \ - RackBulkEditForm, RackBulkDeleteForm, RackFilterForm, DeviceTypeForm, DeviceTypeBulkEditForm, \ +from .forms import SiteForm, SiteImportForm, RackGroupForm, RackGroupFilterForm, RackGroupBulkDeleteForm, RackForm, \ + RackImportForm, RackBulkEditForm, RackBulkDeleteForm, RackFilterForm, DeviceTypeForm, DeviceTypeBulkEditForm, \ DeviceTypeBulkDeleteForm, DeviceTypeFilterForm, DeviceForm, DeviceImportForm, DeviceBulkEditForm, \ DeviceBulkDeleteForm, DeviceFilterForm, ConsolePortForm, ConsolePortCreateForm, ConsolePortConnectionForm, \ ConsoleConnectionImportForm, ConsoleServerPortForm, ConsoleServerPortCreateForm, ConsoleServerPortConnectionForm, \ @@ -144,17 +144,18 @@ class RackGroupListView(ObjectListView): template_name = 'dcim/rackgroup_list.html' -class RackGroupAddView(PermissionRequiredMixin, CreateView): +class RackGroupAddView(PermissionRequiredMixin, ObjectAddView): permission_required = 'dcim.add_rackgroup' model = RackGroup - fields = ['site', 'name', 'slug'] + form_class = RackGroupForm template_name = 'dcim/rackgroup_edit.html' + cancel_url = 'dcim:rackgroup_list' -class RackGroupEditView(PermissionRequiredMixin, UpdateView): +class RackGroupEditView(PermissionRequiredMixin, ObjectEditView): permission_required = 'dcim.change_rackgroup' model = RackGroup - fields = ['site', 'name', 'slug'] + form_class = RackGroupForm template_name = 'dcim/rackgroup_edit.html' diff --git a/netbox/templates/dcim/rackgroup_edit.html b/netbox/templates/dcim/rackgroup_edit.html index 4b9229ee1..5b256b63a 100644 --- a/netbox/templates/dcim/rackgroup_edit.html +++ b/netbox/templates/dcim/rackgroup_edit.html @@ -1,49 +1,11 @@ -{% extends '_base.html' %} +{% extends 'utilities/obj_edit.html' %} {% load form_helpers %} -{% block title %}{% if rack %}Editing rack group {{ rackgroup }}{% else %}Add a rack group{% endif %}{% endblock %} - -{% block content %} -
- {% csrf_token %} -
-
- {% if rackgroup %} -

Rack group {{ rackgroup }}

- {% else %} -

Add a Rack Group

- {% endif %} - {% if form.non_field_errors %} -
-
Errors
-
- {{ form.non_field_errors }} -
-
- {% endif %} +{% block form %} +
+
Rack Group
+
+ {% render_form form %}
-
-
-
-
Rack Group
-
- {% render_form form %} -
-
-
-
-
-
- {% if rackgroup %} - - Cancel - {% else %} - - - Cancel - {% endif %} -
-
- {% endblock %}