#9318: "Virtual" behaviour for signal dispatcher and model inheritance -------------------------------------+------------------------------------- Reporter: svetlyak40wt | Owner: jdunck Type: New feature | Status: assigned Component: Core (Other) | Version: 1.0 Severity: Normal | Resolution: Keywords: model inheritance, | Triage Stage: Accepted signals, dispatch, proxy, | Needs documentation: 0 subclass | Patch needs improvement: 1 Has patch: 1 | UI/UX: 0 Needs tests: 0 | Easy pickings: 0 | -------------------------------------+-------------------------------------
Comment (by carljm): Closed #18094 as a duplicate - there's some useful discussion there. Also, there's a mailing list thread at https://groups.google.com/d/msg/django- developers/2aDFeNAXJgI/-riTuIgNLPQJ If a fix is put into place within the signals framework itself, then the pre/post_delete signal behavior should be changed so that it does not fire separate signals for parent model classes, which it does now (unlike the save and init signals). I'll also repeat one comment I made on #18094: I think a fix that relies on opt-in from the person registering the signal handler is not adequate, as this is often not the same person who might be creating a subclass (particularly a proxy subclass). A reusable app that registers a signal handler for a model ought to be able to assume that that handler will fire when instances of that model are involved, without needing to take special opt-in steps to ensure that this is still the case when subclasses are involved. -- Ticket URL: <https://code.djangoproject.com/ticket/9318#comment:20> 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 post to this group, send email to django-updates@googlegroups.com. To unsubscribe from this group, send email to django-updates+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-updates?hl=en.