пользовательская форма администратора Django - добавление кнопки, которая выполняет вызовы API - PullRequest
0 голосов
/ 25 октября 2018

Я хочу добавить пользовательскую кнопку, которая вызывает конечную точку API, когда я щелкаю ее и возвращаюсь на предыдущую страницу.

У меня есть моя пользовательская форма как

{% extends 'admin/change_list.html' %}

{% block object-tools %}
    <div>
        <form action="myurl/" method="POST">
            {% csrf_token %}
                <button type="submit">go!</button>
        </form>
    </div>
    <br />
    {{ block.super }}
{% endblock %}

Мне, вероятно, нужнодобавить action к form, но я не знаю, что здесь делать.

в моем admin.py, у меня

def get_urls(self):
    urls = super().get_urls()
    urls += [
        path('myurl/', self.update_summary)
    ]

    return urls

def update_summary(self, request):
    print('&'*20)
    # i should add my function here but I want to print out the &s first
    self.message_user(request, "done!!!!")
    return HttpResponseRedirect("../")

несколько вопросов:

  1. Является ли мой подход правильным?
  2. Что мне нужно сделать, чтобы вызвать мой API, скажем, конечная точка равна localhost:8000/some/endpoint/ или reverse('myendpoint')

РЕДАКТИРОВАТЬ:

немного отредактировал вопрос, поскольку я исследовал больше.Такое ощущение, что мой звонок должен быть правильным.myurl/ вызывается нажатием кнопки, а затем вызывается self.update_summary, который выполняет мое действие.

Но я получаю предупреждение, как Reviewed txn by person with ID "myurl" doesn't exist. Perhaps it was deleted?

Я не звонюс идентификатором, как это отключить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...