1
0
mirror of https://github.com/django/django.git synced 2025-07-19 00:59:17 +00:00

[1.0.X] Fixed #10845 -- Clarified the examples for using ModelForms with fields or exclude specified. Thanks to Andrew Durdin for the suggestion.

Merge of r10972 from trunk.


git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.0.X@10975 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Russell Keith-Magee 2009-06-10 12:54:15 +00:00
parent 383c46dc8d
commit 922aed5465

View File

@ -318,16 +318,19 @@ Since the Author model has only 3 fields, 'name', 'title', and
to be empty, and does not provide a default value for the missing fields, to be empty, and does not provide a default value for the missing fields,
any attempt to ``save()`` a ``ModelForm`` with missing fields will fail. any attempt to ``save()`` a ``ModelForm`` with missing fields will fail.
To avoid this failure, you must instantiate your model with initial values To avoid this failure, you must instantiate your model with initial values
for the missing, but required fields, or use ``save(commit=False)`` and for the missing, but required fields::
manually set any extra required fields::
instance = Instance(required_field='value') author = Author(title='Mr')
form = InstanceForm(request.POST, instance=instance) form = PartialAuthorForm(request.POST, instance=author)
new_instance = form.save() form.save()
instance = form.save(commit=False) Alternatively, you can use ``save(commit=False)`` and manually set
instance.required_field = 'new value' any extra required fields::
new_instance = instance.save()
form = PartialAuthorForm(request.POST)
author = form.save(commit=False)
author.title = 'Mr'
author.save()
See the `section on saving forms`_ for more details on using See the `section on saving forms`_ for more details on using
``save(commit=False)``. ``save(commit=False)``.