Django Администратор change_view не передает extra_context html - PullRequest
0 голосов
/ 04 марта 2020

Я ищу достаточно времени для передачи extra_context в html представления изменений администратора. В представленной форме изменений отображаются только теги H. Я проверил свои данные, пока они не будут возвращены, и все, кажется, в порядке. Это просто не будет передано вперед. Странно, я не получаю никаких ошибок при индексации на странице html. Кто-нибудь обнаружил ошибку?

admin.py

class CustomerAdmin(admin.ModelAdmin):
    list_display = ("name", "company", "country", "invoice_currency")
    search_fields = ["name", "company", "country"]
    list_filter = (TotalInvoiceOver1kFilter,)
    actions = [get_all_customers_invoices,]
    change_form_template = 'admin/crm/change_form.html'


    def change_view(self, request, object_id, form_url='', extra_context=None):
        extra = extra_context or {}
        extra['last_three_inv'] = Invoice.objects \
                                                 .filter(inv_customer=object_id) \
                                                 .order_by('-inv_date')[0:3]
        extra['total_amount_12_months'] = Invoice.objects \
                                                 .filter(inv_customer=object_id) \
                                                 .aggregate(Sum('inv_amount'))



        return super(CustomerAdmin, self).change_view(
            request, object_id, form_url, extra_context=extra_context,
        )

change_form. html

<!DOCTYPE html>

{% extends "admin/change_form.html" %}

{% block form_top %}
<h2>Last 3 invoices:</h2>
{% for invoice in extra_context.last_three_inv %}
{{invoice.inv_number}}
{% endfor %}
<h2>Total amount past 12 months:</h2>
{{extra_context.total_amount_12_months.inv_amount__sum}}
{% endblock %}
...