#29064: SuccessMessageMixin delete support
-------------------------------------+-------------------------------------
               Reporter:  Éttore     |          Owner:  nobody
  Leandro Tognoli                    |
                   Type:  New        |         Status:  new
  feature                            |
              Component:             |        Version:  2.0
  contrib.messages                   |       Keywords:  delete, message,
               Severity:  Normal     |  SuccessMessageMixin, DeleteView,
           Triage Stage:             |  generic view
  Unreviewed                         |      Has patch:  0
    Needs documentation:  0          |    Needs tests:  0
Patch needs improvement:  0          |  Easy pickings:  0
                  UI/UX:  0          |
-------------------------------------+-------------------------------------
 I want to show a message when  I delete some object using the
 SuccessMessageMixin, but it doesn't work because the DeleteView doesn't
 have a form_valid method.
 I think it would be nice if django had native support for this.

 I wrote something like this in my personal project:

 {{{

 from django.contrib import messages
 from django.contrib.messages.views import SuccessMessageMixin
 from django.forms import model_to_dict

 class SuccessMessageMixinWithDeleteSupport(SuccessMessageMixin):
     def delete_form_valid(self, object):
         success_message = self.get_success_message(model_to_dict(object))
         if success_message:
             messages.success(self.request, success_message)

     def delete(self, *args, **kwargs):
         object = self.get_object()
         result = super().delete(*args, **kwargs)
         self.delete_form_valid(object)
         return result
 }}}

-- 
Ticket URL: <https://code.djangoproject.com/ticket/29064>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/063.93b1167c31366f737e630c77293cbc2f%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to