函数在哪里结束添加成功message/send email - Django/Python

Where does the function end to add success message/send email - Django/Python

在此视图中,我想添加完成删除的成功消息,并通过电子邮件向所有者发送删除通知。

我正在使用别人的代码,所以我不太熟悉它。

在此代码中,我应该在何处插入成功消息和 "send_mail" 函数?同样,我想将它插入函数成功的地方,但就在重定向发生之前。

谢谢!

class DeleteEventView(DeleteView):
    template_name = 'schedule/delete_event.html'
    pk_url_kwarg = 'event_id'
    model = Event

    def get_context_data(self, **kwargs):
        ctx = super(DeleteEventView, self).get_context_data(**kwargs)
        ctx['next'] = self.get_success_url()
        return ctx

    def get_success_url(self):
        """
        After the event is deleted there are three options for redirect, tried in
        this order:

        # Try to find a 'next' GET variable
        # If the key word argument redirect is set
        # Lastly redirect to the event detail of the recently create event
        """
        next = self.kwargs.get('next') or reverse('day_calendar', args=[self.object.calendar.slug])
        next = get_next_url(self.request, next)
        return next

    ## Override dispatch to apply the permission decorator
    @method_decorator(login_required)
    @method_decorator(check_event_permissions)
    def dispatch(self, request, *args, **kwargs):
        return super(DeleteEventView, self).dispatch(request, *args, **kwargs)

覆盖 delete() 方法:

from django.contrib import messages

class DeleteEventView(DeleteView):
    ...
    def delete(self, request, *args, **kwargs):
        response = super(DeleteEventView, self).delete(request,
                                                       *args, **kwargs)
        deleted_event = self.object
        messages.success(request, 'Event %s deleted.' % deleted_event)
        return response