#34317 closed Cleanup/optimization (fixed)
wrong attribute naming in method BaseModelFormSet.save_existing
| Reported by: | Maxim Danilov | Owned by: | Baha Sdtbekov |
|---|---|---|---|
| Component: | Forms | Version: | dev |
| Severity: | Normal | Keywords: | Formset, ModelFomset |
| Cc: | Triage Stage: | Ready for checkin | |
| Has patch: | yes | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description (last modified by )
django.forms.models.py rows 654-667
we have a three methods:
def save_new(self, form, commit=True):
"""Save and return a new model instance for the given form."""
return form.save(commit=commit)
def save_existing(self, form, instance, commit=True):
"""Save and return an existing model instance for the given form."""
return form.save(commit=commit)
def delete_existing(self, obj, commit=True):
"""Deletes an existing model instance."""
if commit:
obj.delete()
in delete_existing we have an "obj"
in save_existing we have an "instance"
why it is so? where the difference?
For ModelFormset in admin Inline we have also other instance: parent object. I can expected this "instance (parent)" instead of current "object".
My opinion: attribute name "instance" in save_existing should be changed on "obj"
Change History (9)
comment:1 by , 3 years ago
| Description: | modified (diff) |
|---|---|
| Summary: | wrong variable naming in method BaseModelFormSet.save_existing → wrong attribute naming in method BaseModelFormSet.save_existing |
follow-up: 4 comment:2 by , 3 years ago
| Triage Stage: | Unreviewed → Accepted |
|---|
comment:3 by , 3 years ago
| Owner: | changed from to |
|---|---|
| Status: | new → assigned |
comment:4 by , 3 years ago
Replying to Carlton Gibson:
Hey Maxim, OK, yes. Where it's called the argument is
obj, so +1 to making it consistent.
Want to make the PR?
Thanks.
Yes Carlton. I want to try to made it.
comment:6 by , 3 years ago
| Triage Stage: | Accepted → Ready for checkin |
|---|---|
| Version: | 4.1 → dev |
comment:8 by , 3 years ago
comment:9 by , 3 years ago
Mariusz Felisiak was faster than me :*-(
Not me, I only merged PR prepared by Bakdolot.
Hey Maxim, OK, yes. Where it's called the argument is
obj, so +1 to making it consistent.Want to make the PR?
Thanks.