diff options
| author | Joseph Kocherhans <joseph@jkocherhans.com> | 2010-03-06 19:51:29 +0000 |
|---|---|---|
| committer | Joseph Kocherhans <joseph@jkocherhans.com> | 2010-03-06 19:51:29 +0000 |
| commit | fa6c967438e8c22b63b3cc0ef71815525f15856a (patch) | |
| tree | ce7a314a03df8524b3aba6bda2bdf15cf18525b9 /docs | |
| parent | 90616a77f0e7850ccb830d7d8533640f4dbf99db (diff) | |
Fixed #12896. Documented the new side-effects of ModelForm validation.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@12693 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/releases/1.2.txt | 10 | ||||
| -rw-r--r-- | docs/topics/forms/modelforms.txt | 13 |
2 files changed, 23 insertions, 0 deletions
diff --git a/docs/releases/1.2.txt b/docs/releases/1.2.txt index 38df3b120c..f30e84a77d 100644 --- a/docs/releases/1.2.txt +++ b/docs/releases/1.2.txt @@ -299,6 +299,16 @@ For those following trunk, this change also applies to other decorators introduced since 1.1, including ``csrf_protect``, ``cache_control`` and anything created using ``decorator_from_middleware``. +``ModelForm.is_valid()`` and ``ModelForm.errors`` +------------------------------------------------- + +Much of the validation work for ModelForms has been moved down to the model +level. As a result, the first time you call ``ModelForm.is_valid()``, access +``ModelForm.errors`` or otherwise trigger form validation, your model will be +cleaned in-place. This conversion used to happen when the model was saved. If +you need an unmodified instance of your model, you should pass a copy to the +``ModelForm`` constructor. + .. _deprecated-features-1.2: diff --git a/docs/topics/forms/modelforms.txt b/docs/topics/forms/modelforms.txt index 96ed0ab544..9a64919534 100644 --- a/docs/topics/forms/modelforms.txt +++ b/docs/topics/forms/modelforms.txt @@ -196,6 +196,19 @@ we'll discuss in a moment.):: name = forms.CharField(max_length=100) authors = forms.ModelMultipleChoiceField(queryset=Author.objects.all()) +The ``is_valid()`` method and ``errors`` +---------------------------------------- + +.. versionchanged:: 1.2 + +The first time you call ``is_valid()`` or access the ``errors`` attribute of a +``ModelForm`` has always triggered form validation, but as of Django 1.2, it +will also trigger :ref:`model validation <validating-objects>`. This has the +side-effect of cleaning the model you pass to the ``ModelForm`` constructor. +For instance, calling ``is_valid()`` on your form will convert any date fields +on your model to actual date objects. + + The ``save()`` method --------------------- |
