Отправка email при изменении значения в list_editable в админке Djngo

Я пытаюсь реализовать решение, которое позволит владельцам автоматически отправлять электронные письма всякий раз, когда владелец меняет статус и нажимает сохранить в list_view в панели администратора. Идея заключается в том, что владелец заходит в панель администратора, изменяет и сохраняет статус, например, с received на in_progress, а пользователь, отправивший запрос, получает уведомление по электронной почте.

Я не уверен, какой метод или функцию я должен переписать в моей RequestsAdmin модели, чтобы отправлять электронное письмо при нажатии кнопки сохранить в моем list_view в панели администратора.

Создание пользовательского действия для изменения статуса не является вариантом в данном случае.

models.py

class Requests(models.Model):
    STATUS = (
        ('received', _('Question received')),
        ('in_progress', _('In progress')),
        ('ready_to_check', _('Ready to check')),
        ('published', _('Published')),
    )
    user = models.CharField(max_length=255, blank=True, null=True,)
    owner = models.ForeignKey(User, blank=True, null=True, on_delete=models.CASCADE)
    title = models.CharField(max_length=1000, blank=True, null=True, default='')
    body = models.TextField('Description')
    publish_date = models.DateTimeField(default=timezone.now)
    priority = models.BooleanField(default=False, blank=True, null=True)default=False)
    status = models.CharField(max_length=32, choices=STATUS, default='received')

admin.py

class RequestsAdmin(ImportExportModelAdmin):
    list_display  = ('title', 'publish_date', 'priority', 'owner', 'status')
    list_editable = ('status', )
    
admin.site.register(Requests, RequestsAdmin)
Вернуться на верх