【发布时间】:2019-04-30 07:19:38
【问题描述】:
在 Django 管理面板中。我有一个模型,其中包含用户 ID、名称、状态等字段。我想在选择 status="approved" 并单击保存按钮时调用 API(例如:- www.xyx.com?user=userID&status='approved')。
【问题讨论】:
标签: django django-admin django-admin-actions
在 Django 管理面板中。我有一个模型,其中包含用户 ID、名称、状态等字段。我想在选择 status="approved" 并单击保存按钮时调用 API(例如:- www.xyx.com?user=userID&status='approved')。
【问题讨论】:
标签: django django-admin django-admin-actions
您可以覆盖ModelAdmin 中的save_model() 方法。从那里,您可以在将保存操作本身委托给父类之前发出 API 请求。
例如,假设您的模型类名为 MyModel,并且您正在使用 Requests 库来调用 API:
from django.contrib import admin
import requests
class MyModelAdmin(admin.ModelAdmin):
def save_model(self, request, obj, form, change):
if obj.status == 'approved':
# Make the API call
requests.get('http://www.example.com', params={'user': obj.userID, 'status': 'approved'})
# Delegate the save to the parent class
super().save_model(request, obj, form, change)
【讨论】: