Clean up with clone class

This commit is contained in:
John Mullins
2023-08-28 11:38:20 +10:00
parent 45149ffb5d
commit cc706420a5
5 changed files with 7 additions and 76 deletions
-1
View File
@@ -133,5 +133,4 @@ GitHub.sublime-settings
/static
/busManager/busManager/settings.py
/busManager/coord/migrations
/busManager/coord/adminCloneOld.py
/busManager/busManager/templates/admin/base.html
+6 -11
View File
@@ -1,9 +1,6 @@
from functools import update_wrapper
from django.contrib.admin import ModelAdmin, helpers
from django.contrib.admin.utils import unquote, flatten_fieldsets
from django.utils.functional import lazy
from django.forms.models import model_to_dict
from django.contrib.admin.utils import flatten_fieldsets
from django.forms.formsets import all_valid
from django.urls import reverse, path
from django.core.exceptions import PermissionDenied
@@ -29,7 +26,7 @@ class CloneModelAdmin(ModelAdmin):
new_urlpatterns = [
path(
"<path:object_id>/clone/",
wrap(self.cloneform_view),
wrap(self.clone_view),
name="%s_%s_clone" % info,
),
]
@@ -37,22 +34,20 @@ class CloneModelAdmin(ModelAdmin):
original_urlpatterns = super(CloneModelAdmin, self).get_urls()
# Important to add custom urls before the existing ones.
# Last entry is <URLPattern '<path:object_id>/'> which will pick up everything not already picked up
# Last entry is <URLPattern '<path:object_id>/'> which will catch everything not already picked up
return new_urlpatterns + original_urlpatterns
def change_view(self, request, object_id, form_url='', extra_context=None):
print(object_id)
url = "{0}coord/traveller/{1}/clone/".format(reverse("admin:index"), object_id)
url = "/admin/coord/traveller/3/clone/"
url = reverse("admin:{0}_{1}_clone".format(self.opts.app_label, self.opts.model_name), args=[object_id])
extra_context = extra_context or {}
extra_context.update({
'clone_verbose_name': self.clone_verbose_name,
'clone_link': url,
})
print(extra_context)
return super(CloneModelAdmin, self).change_view(request, object_id, form_url, extra_context)
def cloneform_view(self, request, object_id, form_url='', extra_context=None):
def clone_view(self, request, object_id, form_url='', extra_context=None):
if not self.has_add_permission(request):
raise PermissionDenied
@@ -1,46 +0,0 @@
{% extends "admin/base_site.html" %}
{% load i18n admin_urls static admin_modify %}
{% block extrahead %}{{ block.super }}
<script src="{% url 'admin:jsi18n' %}"></script>
{{ media }}
{% endblock %}
{% block extrastyle %}{{ block.super }}<link rel="stylesheet" href="{% static "admin/css/forms.css" %}">{% endblock %}
{% block coltype %}colM{% endblock %}
{% block bodyclass %}{{ block.super }} app-{{ app_label }} model-{{ verbose_name }} change-form{% endblock %}
{% if not is_popup %}
{% block breadcrumbs %}
<div class="breadcrumbs">
<a href="{% url 'admin:index' %}">{% translate 'Home' %}</a>
<a href="{% url 'admin:app_list' app_label='coord' %}">{{ verbose_name }}</a>
&rsaquo; {% if has_view_permission %}<a href="{% url opts|admin_urlname:'changelist' %}">{{ opts.verbose_name_plural|capfirst }}</a>{% else %}{{ opts.verbose_name_plural|capfirst }}{% endif %}
&rsaquo; {% if add %}{% blocktranslate with name=verbose_name %}Add {{ name }}{% endblocktranslate %}{% else %}{{ original|truncatewords:"18" }}{% endif %}
</div>
{% endblock %}
{% endif %}
{% block content %}<div id="content-main">
{% block after_field_sets %}{% endblock %}
{% block inline_field_sets %}
{% endblock %}
{% block after_related_objects %}{% endblock %}
{% block submit_buttons_bottom %}{% endblock %}
{% block admin_change_form_document_ready %}
{% endblock %}
</div>
{% endblock %}
@@ -1,17 +0,0 @@
{% load i18n admin_urls %}
<div class="submit-row">
{% block submit-row %}
{% if show_save %}<input type="submit" value="{% translate 'Save' %}" class="default" name="_save">{% endif %}
{% if show_save_as_new %}<input type="submit" value="{% translate 'Save as new' %}" name="_saveasnew">{% endif %}
{% if show_save_and_add_another %}<input type="submit" value="{% translate 'Save and add another' %}" name="_addanother">{% endif %}
{% if show_save_and_continue %}<input type="submit" value="{% if can_change %}{% translate 'Save and continue editing' %}{% else %}{% translate 'Save and view' %}{% endif %}" name="_continue">{% endif %}
{% if show_close %}
{% url opts|admin_urlname:'changelist' as changelist_url %}
<a href="{% add_preserved_filters changelist_url %}" class="closelink">{% translate 'Close' %}</a>
{% endif %}
{% if show_delete_link and original %}
{% url opts|admin_urlname:'delete' original.pk|admin_urlquote as delete_url %}
<a href="{% add_preserved_filters delete_url %}" class="deletelink">{% translate "Delete" %}</a>
{% endif %}
{% endblock %}
</div>
+1 -1
View File
@@ -2,7 +2,7 @@ from django.contrib.admin.views.decorators import staff_member_required
from django.http import HttpResponse
from django.shortcuts import render
from django.views.generic import ListView
from .models import Company, Bus, Traveller, BusStop, TravellerRoute
from .models import Company, Bus, Traveller, BusStop, TravellerRoute, Shuttle, Driver
# def index(request):