Django admin:如何在单击自定义按钮时调用动作?

时间:2019-06-14 07:03:18

标签: django django-models django-rest-framework django-admin

我有一个django管理员视图,显示订单列表。我添加了一个自定义按钮,单击该按钮应执行某些操作。

enter image description here

所以我在services.py文件中定义了一个函数:

def penalty(order):
  #Do something

因此,当点击惩罚时,我应该如何调用此函数。我可以创建一个视图,但是如何调用它呢?

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

您需要的全部在这里:

  

https://medium.com/@hakibenita/how-to-add-custom-action-buttons-to-django-admin-8d266f5b0d41

按照简单的步骤操作,即可开始使用。 网上还有许多其他人。

答案 2 :(得分:0)

您可以添加这样的URL来调用函数

     def get_urls(self):
        urls = super().get_urls()
        custom_urls = [
            path(
                'penalty/<int:id>',
                self.admin_site.admin_view(self.penalty),
                name='penalty'
            )
        ]
        return custom_urls + urls

通过按钮单击Django admin