Вы можете переопределить метод save_model()
в ModelAdmin
.Оттуда вы можете сделать запрос API, прежде чем делегировать саму операцию сохранения родительскому классу.
Например, если предположить, что ваш класс модели называется MyModel
, и вы используете Запросы библиотека для вызова 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)