Clean up and document object edit & delete templates

This commit is contained in:
jeremystretch 2022-02-08 10:56:48 -05:00
parent 624eda297f
commit b0039e938e
10 changed files with 69 additions and 50 deletions

View File

@ -344,8 +344,7 @@ class ObjectEditView(GetReturnURLMixin, BaseObjectView):
restrict_form_fields(form, request.user) restrict_form_fields(form, request.user)
return render(request, self.template_name, { return render(request, self.template_name, {
'obj': obj, 'object': obj,
'obj_type': self.queryset.model._meta.verbose_name,
'form': form, 'form': form,
'return_url': self.get_return_url(request, obj), 'return_url': self.get_return_url(request, obj),
**self.get_extra_context(request, obj), **self.get_extra_context(request, obj),
@ -423,8 +422,7 @@ class ObjectEditView(GetReturnURLMixin, BaseObjectView):
logger.debug("Form validation failed") logger.debug("Form validation failed")
return render(request, self.template_name, { return render(request, self.template_name, {
'obj': obj, 'object': obj,
'obj_type': self.queryset.model._meta.verbose_name,
'form': form, 'form': form,
'return_url': self.get_return_url(request, obj), 'return_url': self.get_return_url(request, obj),
**self.get_extra_context(request, obj), **self.get_extra_context(request, obj),
@ -468,7 +466,6 @@ class ObjectDeleteView(GetReturnURLMixin, BaseObjectView):
return render(request, self.template_name, { return render(request, self.template_name, {
'object': obj, 'object': obj,
'object_type': self.queryset.model._meta.verbose_name,
'form': form, 'form': form,
'return_url': self.get_return_url(request, obj), 'return_url': self.get_return_url(request, obj),
**self.get_extra_context(request, obj), **self.get_extra_context(request, obj),
@ -513,7 +510,6 @@ class ObjectDeleteView(GetReturnURLMixin, BaseObjectView):
return render(request, self.template_name, { return render(request, self.template_name, {
'object': obj, 'object': obj,
'object_type': self.queryset.model._meta.verbose_name,
'form': form, 'form': form,
'return_url': self.get_return_url(request, obj), 'return_url': self.get_return_url(request, obj),
**self.get_extra_context(request, obj), **self.get_extra_context(request, obj),
@ -557,8 +553,7 @@ class ComponentCreateView(GetReturnURLMixin, BaseObjectView):
instance = self.alter_object(self.queryset.model, request) instance = self.alter_object(self.queryset.model, request)
return render(request, self.template_name, { return render(request, self.template_name, {
'obj': instance, 'object': instance,
'obj_type': self.queryset.model._meta.verbose_name,
'replication_form': form, 'replication_form': form,
'form': model_form, 'form': model_form,
'return_url': self.get_return_url(request), 'return_url': self.get_return_url(request),
@ -577,8 +572,7 @@ class ComponentCreateView(GetReturnURLMixin, BaseObjectView):
return redirect(self.get_return_url(request)) return redirect(self.get_return_url(request))
return render(request, self.template_name, { return render(request, self.template_name, {
'obj': instance, 'object': instance,
'obj_type': self.queryset.model._meta.verbose_name,
'replication_form': form, 'replication_form': form,
'form': model_form, 'form': model_form,
'return_url': self.get_return_url(request), 'return_url': self.get_return_url(request),

View File

@ -2,7 +2,7 @@
{% load static %} {% load static %}
{% load form_helpers %} {% load form_helpers %}
{% block title %}{{ obj.circuit.provider }} {{ obj.circuit }} - Side {{ form.term_side.value }}{% endblock %} {% block title %}{{ object.circuit.provider }} {{ object.circuit }} - Side {{ form.term_side.value }}{% endblock %}
{% block form %} {% block form %}
<div class="field-group my-5"> <div class="field-group my-5">
@ -12,13 +12,13 @@
<div class="row mb-3"> <div class="row mb-3">
<label class="col-sm-3 col-form-label text-lg-end">Provider</label> <label class="col-sm-3 col-form-label text-lg-end">Provider</label>
<div class="col"> <div class="col">
<input class="form-control" value="{{ obj.circuit.provider }}" disabled /> <input class="form-control" value="{{ object.circuit.provider }}" disabled />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<label class="col-sm-3 col-form-label text-lg-end">Circuit</label> <label class="col-sm-3 col-form-label text-lg-end">Circuit</label>
<div class="col"> <div class="col">
<input class="form-control" value="{{ obj.circuit.cid }}" disabled /> <input class="form-control" value="{{ object.circuit.cid }}" disabled />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
@ -69,7 +69,7 @@
{# Override buttons block, 'Create & Add Another'/'_addanother' is not needed on a circuit. #} {# Override buttons block, 'Create & Add Another'/'_addanother' is not needed on a circuit. #}
{% block buttons %} {% block buttons %}
<a class="btn btn-outline-danger" href="{{ return_url }}">Cancel</a> <a class="btn btn-outline-danger" href="{{ return_url }}">Cancel</a>
{% if obj.pk %} {% if object.pk %}
<button type="submit" name="_update" class="btn btn-primary"> <button type="submit" name="_update" class="btn btn-primary">
Save Save
</button> </button>

View File

@ -1,14 +1,16 @@
{% extends 'generic/object_edit.html' %} {% extends 'generic/object_edit.html' %}
{% load form_helpers %} {% load form_helpers %}
{% block form_fields %} {% block form %}
<div class="field-group mb-5">
{% if form.instance.device %} {% if form.instance.device %}
<div class="row mb-3"> <div class="row mb-3">
<label class="col-sm-3 col-form-label text-lg-end">Device</label> <label class="col-sm-3 col-form-label text-lg-end">Device</label>
<div class="col"> <div class="col">
<input class="form-control" value="{{ form.instance.device }}" disabled /> <input class="form-control" value="{{ form.instance.device }}" disabled />
</div>
</div> </div>
</div>
{% endif %} {% endif %}
{% render_form form %} {% render_form form %}
{% endblock %} </div>
{% endblock form %}

View File

@ -34,19 +34,19 @@
{% render_field form.location %} {% render_field form.location %}
{% render_field form.rack %} {% render_field form.rack %}
{% if obj.device_type.is_child_device and obj.parent_bay %} {% if object.device_type.is_child_device and object.parent_bay %}
<div class="row mb-3"> <div class="row mb-3">
<label class="col-sm-3 col-form-label">Parent Device</label> <label class="col-sm-3 col-form-label">Parent Device</label>
<div class="col"> <div class="col">
<input class="form-control" value="{{ obj.parent_bay.device }}" disabled /> <input class="form-control" value="{{ object.parent_bay.device }}" disabled />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<label class="col-sm-3 col-form-label">Parent Bay</label> <label class="col-sm-3 col-form-label">Parent Bay</label>
<div class="col"> <div class="col">
<div class="input-group"> <div class="input-group">
<input class="form-control" value="{{ obj.parent_bay.name }}" disabled /> <input class="form-control" value="{{ object.parent_bay.name }}" disabled />
<a href="{% url 'dcim:devicebay_depopulate' pk=obj.parent_bay.pk %}" title="Regenerate Slug" class="btn btn-danger d-inline-flex align-items-center"> <a href="{% url 'dcim:devicebay_depopulate' pk=object.parent_bay.pk %}" title="Regenerate Slug" class="btn btn-danger d-inline-flex align-items-center">
<i class="mdi mdi-close-thick"></i>&nbsp;Remove <i class="mdi mdi-close-thick"></i>&nbsp;Remove
</a> </a>
</div> </div>
@ -64,7 +64,7 @@
</div> </div>
{% render_field form.status %} {% render_field form.status %}
{% render_field form.platform %} {% render_field form.platform %}
{% if obj.pk %} {% if object.pk %}
{% render_field form.primary_ip4 %} {% render_field form.primary_ip4 %}
{% render_field form.primary_ip6 %} {% render_field form.primary_ip6 %}
{% endif %} {% endif %}

View File

@ -93,8 +93,8 @@
{% block buttons %} {% block buttons %}
<a href="{{ return_url }}" class="btn btn-outline-danger">Cancel</a> <a href="{{ return_url }}" class="btn btn-outline-danger">Cancel</a>
{% if obj.pk %} {% if object.pk %}
<button type="button" return-url="?return_url={% url 'dcim:interface_edit' pk=obj.pk %}" class="btn btn-outline-primary">Save & Continue Editing</button> <button type="button" return-url="?return_url={% url 'dcim:interface_edit' pk=object.pk %}" class="btn btn-outline-primary">Save & Continue Editing</button>
<button type="submit" name="_update" class="btn btn-primary">Save</button> <button type="submit" name="_update" class="btn btn-primary">Save</button>
{% else %} {% else %}
<button type="submit" name="_addanother" class="btn btn-outline-primary">Create & Add Another</button> <button type="submit" name="_addanother" class="btn btn-outline-primary">Create & Add Another</button>

View File

@ -4,13 +4,13 @@
{% block form %} {% block form %}
{% render_form replication_form %} {% render_form replication_form %}
{% if obj.component %} {% if object.component %}
<div class="row mb-3"> <div class="row mb-3">
<label class="col-sm-3 col-form-label text-lg-end"> <label class="col-sm-3 col-form-label text-lg-end">
{{ obj.component|meta:"verbose_name"|bettertitle }} {{ object.component|meta:"verbose_name"|bettertitle }}
</label> </label>
<div class="col"> <div class="col">
<input class="form-control" value="{{ obj.component }}" disabled /> <input class="form-control" value="{{ object.component }}" disabled />
</div> </div>
</div> </div>
{% endif %} {% endif %}

View File

@ -1,16 +1,19 @@
{% extends 'generic/object_edit.html' %} {% extends 'generic/object_edit.html' %}
{% load helpers %} {% load helpers %}
{% load form_helpers %}
{% block form_fields %} {% block form %}
<div class="row mb-3"> <div class="field-group mb-5">
<label class="col-sm-3 col-form-label text-lg-end required"> <div class="row mb-3">
{{ obj.parent|meta:"verbose_name"|bettertitle }} <label class="col-sm-3 col-form-label text-lg-end required">
</label> {{ object.parent|meta:"verbose_name"|bettertitle }}
<div class="col-sm-9"> </label>
<div class="form-control-plaintext"> <div class="col-sm-9">
<a href="{{ obj.parent.get_absolute_url }}" class="">{{ obj.parent }}</a> <div class="form-control-plaintext">
<a href="{{ object.parent.get_absolute_url }}" class="">{{ object.parent }}</a>
</div>
</div> </div>
</div> </div>
{% render_form form %}
</div> </div>
{{ block.super }} {% endblock form %}
{% endblock form_fields %}

View File

@ -1,7 +1,16 @@
{% extends 'base/layout.html' %} {% extends 'base/layout.html' %}
{% load helpers %}
{% load form_helpers %} {% load form_helpers %}
{% block title %}Delete {{ object_type }}?{% endblock %} {% comment %}
Context:
object: Python instance of the object being deleted
form: The delete confirmation form
form_url: URL for form submission (optional; defaults to current path)
return_url: The URL to which the user is redirected after submitting the form
{% endcomment %}
{% block title %}Delete {{ object|meta:"verbose_name" }}?{% endblock %}
{% block header %}{% endblock %} {% block header %}{% endblock %}

View File

@ -2,15 +2,26 @@
{% load form_helpers %} {% load form_helpers %}
{% load helpers %} {% load helpers %}
{% comment %}
Blocks:
form: Content within the <form> element
buttons: Form submission buttons
Context:
object: Python instance of the object being edited
form: The edit form
return_url: The URL to which the user is redirected after submitting the form
{% endcomment %}
{% block title %} {% block title %}
{% if obj.pk %}Editing {{ obj_type }} {{ obj }}{% else %}Add a new {{ obj_type }}{% endif %} {% if object.pk %}Editing {{ object|meta:"verbose_name" }} {{ object }}{% else %}Add a new {{ object|meta:"verbose_name" }}{% endif %}
{% endblock title %} {% endblock title %}
{% block tabs %} {% block tabs %}
<ul class="nav nav-tabs px-3"> <ul class="nav nav-tabs px-3">
<li class="nav-item" role="presentation"> <li class="nav-item" role="presentation">
<button class="nav-link active" id="edit-form-tab" data-bs-toggle="tab" data-bs-target="#edit-form" type="button" role="tab" aria-controls="edit-form" aria-selected="true"> <button class="nav-link active" id="edit-form-tab" data-bs-toggle="tab" data-bs-target="#edit-form" type="button" role="tab" aria-controls="edit-form" aria-selected="true">
{% if obj.pk %}Edit{% else %}Create{% endif %} {% if object.pk %}Edit{% else %}Create{% endif %}
</button> </button>
</li> </li>
</ul> </ul>
@ -21,9 +32,9 @@
<div class="tab-pane show active" id="edit-form" role="tabpanel" aria-labelledby="object-list-tab"> <div class="tab-pane show active" id="edit-form" role="tabpanel" aria-labelledby="object-list-tab">
{# Link to model documentation #} {# Link to model documentation #}
{% if obj and settings.DOCS_ROOT %} {% if object and settings.DOCS_ROOT %}
<div class="float-end"> <div class="float-end">
<a href="{{ obj|get_docs_url }}" target="_blank" class="btn btn-sm btn-outline-secondary" title="View model documentation"> <a href="{{ object|get_docs_url }}" target="_blank" class="btn btn-sm btn-outline-secondary" title="View model documentation">
<i class="mdi mdi-help-circle"></i> Help <i class="mdi mdi-help-circle"></i> Help
</a> </a>
</div> </div>
@ -75,7 +86,7 @@
{% else %} {% else %}
{# Render all fields in a single group #} {# Render all fields in a single group #}
<div class="field-group mb-5"> <div class="field-group mb-5">
{% block form_fields %}{% render_form form %}{% endblock %} {% render_form form %}
</div> </div>
{% endif %} {% endif %}
@ -84,7 +95,7 @@
<div class="text-end my-3"> <div class="text-end my-3">
{% block buttons %} {% block buttons %}
<a class="btn btn-outline-danger" href="{{ return_url }}">Cancel</a> <a class="btn btn-outline-danger" href="{{ return_url }}">Cancel</a>
{% if obj.pk %} {% if object.pk %}
<button type="submit" name="_update" class="btn btn-primary"> <button type="submit" name="_update" class="btn btn-primary">
Save Save
</button> </button>

View File

@ -58,8 +58,8 @@
{% block buttons %} {% block buttons %}
<a href="{{ return_url }}" class="btn btn-outline-danger">Cancel</a> <a href="{{ return_url }}" class="btn btn-outline-danger">Cancel</a>
{% if obj.pk %} {% if object.pk %}
<button type="button" return-url="?return_url={% url 'virtualization:vminterface_edit' pk=obj.pk %}" class="btn btn-outline-primary">Save & Continue Editing</button> <button type="button" return-url="?return_url={% url 'virtualization:vminterface_edit' pk=object.pk %}" class="btn btn-outline-primary">Save & Continue Editing</button>
<button type="submit" name="_update" class="btn btn-primary">Save</button> <button type="submit" name="_update" class="btn btn-primary">Save</button>
{% else %} {% else %}
<button type="submit" name="_addanother" class="btn btn-outline-primary">Create & Add Another</button> <button type="submit" name="_addanother" class="btn btn-outline-primary">Create & Add Another</button>