Răsfoiți Sursa

Remove unnecessary component creation templates

jeremystretch 4 ani în urmă
părinte
comite
52603c087b

+ 7 - 21
netbox/dcim/views.py

@@ -876,7 +876,6 @@ class ConsolePortTemplateCreateView(generic.ComponentCreateView):
     queryset = ConsolePortTemplate.objects.all()
     form = forms.ConsolePortTemplateCreateForm
     model_form = forms.ConsolePortTemplateForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class ConsolePortTemplateEditView(generic.ObjectEditView):
@@ -911,7 +910,6 @@ class ConsoleServerPortTemplateCreateView(generic.ComponentCreateView):
     queryset = ConsoleServerPortTemplate.objects.all()
     form = forms.ConsoleServerPortTemplateCreateForm
     model_form = forms.ConsoleServerPortTemplateForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class ConsoleServerPortTemplateEditView(generic.ObjectEditView):
@@ -946,7 +944,6 @@ class PowerPortTemplateCreateView(generic.ComponentCreateView):
     queryset = PowerPortTemplate.objects.all()
     form = forms.PowerPortTemplateCreateForm
     model_form = forms.PowerPortTemplateForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class PowerPortTemplateEditView(generic.ObjectEditView):
@@ -981,7 +978,6 @@ class PowerOutletTemplateCreateView(generic.ComponentCreateView):
     queryset = PowerOutletTemplate.objects.all()
     form = forms.PowerOutletTemplateCreateForm
     model_form = forms.PowerOutletTemplateForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class PowerOutletTemplateEditView(generic.ObjectEditView):
@@ -1016,7 +1012,6 @@ class InterfaceTemplateCreateView(generic.ComponentCreateView):
     queryset = InterfaceTemplate.objects.all()
     form = forms.InterfaceTemplateCreateForm
     model_form = forms.InterfaceTemplateForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class InterfaceTemplateEditView(generic.ObjectEditView):
@@ -1051,7 +1046,6 @@ class FrontPortTemplateCreateView(generic.ComponentCreateView):
     queryset = FrontPortTemplate.objects.all()
     form = forms.FrontPortTemplateCreateForm
     model_form = forms.FrontPortTemplateForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class FrontPortTemplateEditView(generic.ObjectEditView):
@@ -1086,7 +1080,6 @@ class RearPortTemplateCreateView(generic.ComponentCreateView):
     queryset = RearPortTemplate.objects.all()
     form = forms.RearPortTemplateCreateForm
     model_form = forms.RearPortTemplateForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class RearPortTemplateEditView(generic.ObjectEditView):
@@ -1121,7 +1114,6 @@ class DeviceBayTemplateCreateView(generic.ComponentCreateView):
     queryset = DeviceBayTemplate.objects.all()
     form = forms.DeviceBayTemplateCreateForm
     model_form = forms.DeviceBayTemplateForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class DeviceBayTemplateEditView(generic.ObjectEditView):
@@ -1638,7 +1630,6 @@ class ConsolePortCreateView(generic.ComponentCreateView):
     queryset = ConsolePort.objects.all()
     form = forms.ConsolePortCreateForm
     model_form = forms.ConsolePortForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class ConsolePortEditView(generic.ObjectEditView):
@@ -1698,7 +1689,6 @@ class ConsoleServerPortCreateView(generic.ComponentCreateView):
     queryset = ConsoleServerPort.objects.all()
     form = forms.ConsoleServerPortCreateForm
     model_form = forms.ConsoleServerPortForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class ConsoleServerPortEditView(generic.ObjectEditView):
@@ -1758,7 +1748,6 @@ class PowerPortCreateView(generic.ComponentCreateView):
     queryset = PowerPort.objects.all()
     form = forms.PowerPortCreateForm
     model_form = forms.PowerPortForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class PowerPortEditView(generic.ObjectEditView):
@@ -1818,7 +1807,6 @@ class PowerOutletCreateView(generic.ComponentCreateView):
     queryset = PowerOutlet.objects.all()
     form = forms.PowerOutletCreateForm
     model_form = forms.PowerOutletForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class PowerOutletEditView(generic.ObjectEditView):
@@ -1913,28 +1901,30 @@ class InterfaceCreateView(generic.ComponentCreateView):
     queryset = Interface.objects.all()
     form = forms.InterfaceCreateForm
     model_form = forms.InterfaceForm
-    template_name = 'dcim/device_component_add.html'
+    template_name = 'dcim/interface_create.html'
 
     def post(self, request):
         """
         Override inherited post() method to handle request to assign newly created
         interface objects (first object) to an IP Address object.
         """
-        logger = logging.getLogger('netbox.dcim.views.InterfaceCreateView')
         form = self.form(request.POST, initial=request.GET)
         new_objs = self.validate_form(request, form)
 
         if form.is_valid() and not form.errors:
             if '_addanother' in request.POST:
                 return redirect(request.get_full_path())
-            elif new_objs is not None and '_assignip' in request.POST and len(new_objs) >= 1 and request.user.has_perm('ipam.add_ipaddress'):
+            elif new_objs is not None and '_assignip' in request.POST and len(new_objs) >= 1 and \
+                    request.user.has_perm('ipam.add_ipaddress'):
                 first_obj = new_objs[0].pk
-                return redirect(f'/ipam/ip-addresses/add/?interface={first_obj}&return_url={self.get_return_url(request)}')
+                return redirect(
+                    f'/ipam/ip-addresses/add/?interface={first_obj}&return_url={self.get_return_url(request)}'
+                )
             else:
                 return redirect(self.get_return_url(request))
 
         return render(request, self.template_name, {
-            'component_type': self.queryset.model._meta.verbose_name,
+            'obj_type': self.queryset.model._meta.verbose_name,
             'form': form,
             'return_url': self.get_return_url(request),
         })
@@ -1997,7 +1987,6 @@ class FrontPortCreateView(generic.ComponentCreateView):
     queryset = FrontPort.objects.all()
     form = forms.FrontPortCreateForm
     model_form = forms.FrontPortForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class FrontPortEditView(generic.ObjectEditView):
@@ -2057,7 +2046,6 @@ class RearPortCreateView(generic.ComponentCreateView):
     queryset = RearPort.objects.all()
     form = forms.RearPortCreateForm
     model_form = forms.RearPortForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class RearPortEditView(generic.ObjectEditView):
@@ -2117,7 +2105,6 @@ class DeviceBayCreateView(generic.ComponentCreateView):
     queryset = DeviceBay.objects.all()
     form = forms.DeviceBayCreateForm
     model_form = forms.DeviceBayForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class DeviceBayEditView(generic.ObjectEditView):
@@ -2243,7 +2230,6 @@ class InventoryItemCreateView(generic.ComponentCreateView):
     queryset = InventoryItem.objects.all()
     form = forms.InventoryItemCreateForm
     model_form = forms.InventoryItemForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class InventoryItemDeleteView(generic.ObjectDeleteView):

+ 3 - 3
netbox/netbox/views/generic.py

@@ -1092,7 +1092,7 @@ class ComponentCreateView(GetReturnURLMixin, ObjectPermissionRequiredMixin, View
     queryset = None
     form = None
     model_form = None
-    template_name = None
+    template_name = 'generic/object_edit.html'
 
     def get_required_permission(self):
         return get_permission_for_model(self.queryset.model, 'add')
@@ -1102,7 +1102,7 @@ class ComponentCreateView(GetReturnURLMixin, ObjectPermissionRequiredMixin, View
         form = self.form(initial=request.GET)
 
         return render(request, self.template_name, {
-            'component_type': self.queryset.model._meta.verbose_name,
+            'obj_type': self.queryset.model._meta.verbose_name,
             'form': form,
             'return_url': self.get_return_url(request),
         })
@@ -1119,7 +1119,7 @@ class ComponentCreateView(GetReturnURLMixin, ObjectPermissionRequiredMixin, View
                 return redirect(self.get_return_url(request))
 
         return render(request, self.template_name, {
-            'component_type': self.queryset.model._meta.verbose_name,
+            'obj_type': self.queryset.model._meta.verbose_name,
             'form': form,
             'return_url': self.get_return_url(request),
         })

+ 0 - 56
netbox/templates/dcim/device_component_add.html

@@ -1,56 +0,0 @@
-{% extends 'base/layout.html' %}
-{% load helpers %}
-{% load form_helpers %}
-
-{% block title %}Create {{ component_type }}{% endblock %}
-
-{% render_errors form %}
-
-{% block content %}
-<form action="" method="post" enctype="multipart/form-data">
-    {% csrf_token %}
-    <div class="row">
-        <div class="col col-md-8 offset-md-2 col-lg-6 offset-lg-3">
-            <div class="field-group">
-                <h5 class="text-center">{{ component_type|title }}</h5>
-                    {% for field in form.hidden_fields %}
-                        {{ field }}
-                    {% endfor %}
-                    {% for field in form.visible_fields %}
-                        {% if not form.custom_fields or field.name not in form.custom_fields %}
-                            {% render_field field %}
-                        {% endif %}
-                    {% endfor %}
-                {% if form.custom_fields %}
-                    <div class="field-group">
-                        <h5 class="text-center">Custom Fields</h5>
-                        {% render_custom_fields form %}
-                    </div>
-                {% endif %}
-            </div>
-        </div>
-    </div>
-    <div class="row my-3">
-        <div class="col col-md-8 offset-md-2 col-lg-6 offset-lg-3 text-end">
-            {% block buttons %}
-                <a class="btn btn-outline-danger" href="{{ return_url }}">Cancel</a>
-                
-                {% if component_type == 'interface' and perms.ipam.add_ipaddress %}
-                    <button type="submit" name="_assignip" class="btn btn-outline-success">
-                        Create & Assign IP Address
-                    </button>
-                {% endif %}
-                
-                <button type="submit" name="_addanother" class="btn btn-outline-primary">
-                    Create & Add Another
-                </button>
-                
-                <button type="submit" name="_create" class="btn btn-primary">
-                    Create
-                </button>
-            
-            {% endblock %}
-        </div>
-    </div>
-</form>
-{% endblock %}

+ 0 - 31
netbox/templates/dcim/devicetype_component_add.html

@@ -1,31 +0,0 @@
-{% extends 'base/layout.html' %}
-{% load form_helpers %}
-
-{% block title %}Add {{ component_type }} to {{ parent }}{% endblock %}
-
-{% render_errors form %}
-
-{% block content %}
-<form action="." method="post">
-    {% csrf_token %}
-    <div class="row">
-        <div class="col col-md-6">
-            <div class="field-group mb-3">
-                <h5 class="text-center">New {{ component_type }}</h5>
-                    <div class="row mb-3">
-                        <label class="col-sm-3 col-form-label">Device Type</label>
-                        <div class="col">
-                            <input class="form-control" value="{{ parent }}" disabled />
-                        </div>
-                    </div>
-                    {% render_form form %}
-                </div>
-            </div>
-            <div class="col col-md-9">
-                <a href="{{ return_url }}" class="btn btn-outline-danger">Cancel</a>
-                <button type="submit" name="_update" class="btn btn-primary">Save</button>
-            </div>
-        </div>
-    </div>
-</form>
-{% endblock %}

+ 16 - 0
netbox/templates/dcim/interface_create.html

@@ -0,0 +1,16 @@
+{% extends 'generic/object_edit.html' %}
+
+{% block buttons %}
+  <a class="btn btn-outline-danger" href="{{ return_url }}">Cancel</a>
+  {% if component_type == 'interface' and perms.ipam.add_ipaddress %}
+    <button type="submit" name="_assignip" class="btn btn-outline-success">
+      Create & Assign IP Address
+    </button>
+  {% endif %}
+  <button type="submit" name="_addanother" class="btn btn-outline-primary">
+    Create & Add Another
+  </button>
+  <button type="submit" name="_create" class="btn btn-primary">
+    Create
+  </button>
+{% endblock %}

+ 1 - 1
netbox/templates/utilities/render_field.html

@@ -101,7 +101,7 @@
     </div>
 
 {% elif field|widget_type == 'selectmultiple' %}
-    <div class="row">
+    <div class="row mb-3">
         <label for="{{ field.id_for_label }}" class="form-label col col-md-3 text-lg-end{% if field.field.required %} required{% endif %}">
             {{ field.label }}
         </label>

+ 0 - 1
netbox/virtualization/views.py

@@ -456,7 +456,6 @@ class VMInterfaceCreateView(generic.ComponentCreateView):
     queryset = VMInterface.objects.all()
     form = forms.VMInterfaceCreateForm
     model_form = forms.VMInterfaceForm
-    template_name = 'dcim/device_component_add.html'
 
 
 class VMInterfaceEditView(generic.ObjectEditView):