Opened 4 years ago

Last modified 4 years ago

#31957 closed Bug

ModelAdmin method save_form not documented but being called multiple times — at Version 1

Reported by: Ivan Gonzalez Owned by: nobody
Component: contrib.admin Version: 3.1
Severity: Normal Keywords:
Cc: Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by Ivan Gonzalez)

I take the opportunity to say this is my first ticket (issue) posted for Django.

As you can search in the docs (https://docs.djangoproject.com/en/dev/ref/contrib/admin/#modeladmin-options). There is no documentation about the ModelAdmin.save_form method but is being called multiple times (lines 1763 and 1575 in django.contrib.admin.options).

On the other hand, ModelAdmin.save_form calls the form.save method and ModelAdmin.save_model calls the obj.save method, but ModelAdmin.save_form and ModelAdmin.save_model are called in the same flow (lines 1763,1764 and 1575,1580 in django.contrib.admin.options), i.e., both can be called in serial leading to multiple saves of the same object. This is specially important when using signals because two calls to save may trigger duplicate signals. Maybe a better documentation of that, a suggestion of which to use, and if it's possible an optimization of those calls would be great.

I'm all ears to your comments.

Change History (1)

comment:1 by Ivan Gonzalez, 4 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.
Back to Top