Changes between Initial Version and Version 1 of Ticket #30407


Ignore:
Timestamp:
04/26/2019 04:14:16 AM (16 months ago)
Author:
Alper Cugun
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #30407 – Description

    initial v1  
    11We ran into a bug (on our side) where our data was not being displayed in a ModelForm for existing instance because we were setting both initial values as the instance in the ModelForm.
    22
    3 Digging into the documentation it turns out that for [ModelForm initial overrides instance values https://docs.djangoproject.com/en/2.2/topics/forms/modelforms/#providing-initial-values] ("Initial values provided this way will override both initial values from the form field and values from an attached model instance.") whereas for [normal Forms initial https://docs.djangoproject.com/en/2.2/ref/forms/api/#dynamic-initial-values] does not take precedence over bound data ("These values are only displayed for unbound forms, and they’re not used as fallback values if a particular value isn’t provided."). Maybe that's my mistake for thinking a bound Form and a ModelForm with an instance are roughly equivalent.
     3Digging into the documentation it turns out that for [ModelForm https://docs.djangoproject.com/en/2.2/topics/forms/modelforms/#providing-initial-values] initial overrides instance values ("Initial values provided this way will override both initial values from the form field and values from an attached model instance.") whereas for normal [Forms https://docs.djangoproject.com/en/2.2/ref/forms/api/#dynamic-initial-values] initial does not take precedence over bound data ("These values are only displayed for unbound forms, and they’re not used as fallback values if a particular value isn’t provided."). Maybe that's my mistake for thinking a bound Form and a ModelForm with an instance are roughly equivalent.
    44
    55I tracked this down to [this commit https://github.com/django/django/commit/51dc4ecf943d1dcc044ed956925760f9d480f56c] 12 years ago and it seems that nobody has complained much about this piece of code in the mean time. So maybe it isn't a problem but I think there is something to be said for reversing the precedence in ModelForm.
Back to Top