Использование идентификатора объекта в шаблоне change_form_object_tools.html - PullRequest
0 голосов
/ 30 апреля 2019

У меня есть две кнопки, которые назначают разные пути.И я хочу передать object.id с параметром.

мои URL

urlpatterns = [
    path('', admin.site.urls, name ='home'),
    path('dpo/imprimir/aprovado/<int:id>/',Aprovado, name ='aprovado'),
    path('dpo/imprimir/reprovado/<int:id>/',Reprovado, name ='reprovado'),
    ]

Мои просмотры

from django.http import HttpResponse
from django.shortcuts import render
from django.shortcuts import render_to_response
from .models import Projeto


def Aprovado(request, id):
        obj = Projeto.objects.get(id=id)
        context = {
                "object": obj
        }
        return render(request, "dpo/imprimir/aprovado.html", context)

def Reprovado(request, id):
        obj = Projeto.objects.get(id=id)
        context = {
                "object": obj
        }
        return render(request, "dpo/imprimir/reprovado.html", context)

** Мой шаблон **

{% load i18n admin_urls %}
{% block object-tools-items %}
<li>
    <a href="{% url 'aprovado' object.id  %}">{% trans "Aprovado" %}</a></a>
</li>
<li>

    <a href="{% url 'reprovado' object.id  %}">{% trans "Aprovado" %}</a>
</li>
{% endblock %}

Я думаю, что я делаю это неправильно

1 Ответ

1 голос
/ 01 мая 2019

В шаблоне change_form_object_tools.html вы должны иметь возможность получить доступ к объекту, используя original.

{% load i18n admin_urls %}
{% block object-tools-items %}
<li>
    <a href="{% url 'aprovado' original.pk  %}">{% trans "Aprovado" %}</a></a>
</li>
<li>

    <a href="{% url 'reprovado' original.pk  %}">{% trans "Aprovado" %}</a>
</li>
{% endblock %}

В общем, вы можете использовать тег {% debug %} или django-debug-toolbar дляпроверьте, какие переменные находятся в контексте шаблона.

...