summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorLoic Bistuer <loic.bistuer@sixmedia.com>2013-10-14 22:42:33 +0700
committerLoic Bistuer <loic.bistuer@sixmedia.com>2013-10-14 22:42:33 +0700
commitb16dd1fe019b38d0dcdf4a400e9377fb06b33178 (patch)
tree2c2a2da6a25b531bf7f3894938a77565a9a7250d /docs
parentac5ec7b8bcc5623cc05d4df900c39e194f5affcf (diff)
Fixed #8620 -- Updated the Form metaclass to support excluding fields by shadowing them.
Diffstat (limited to 'docs')
-rw-r--r--docs/ref/forms/api.txt7
-rw-r--r--docs/releases/1.7.txt3
-rw-r--r--docs/topics/forms/modelforms.txt14
3 files changed, 24 insertions, 0 deletions
diff --git a/docs/ref/forms/api.txt b/docs/ref/forms/api.txt
index 14092512dc..c15f748308 100644
--- a/docs/ref/forms/api.txt
+++ b/docs/ref/forms/api.txt
@@ -854,6 +854,13 @@ classes::
<li>Instrument: <input type="text" name="instrument" /></li>
<li>Haircut type: <input type="text" name="haircut_type" /></li>
+.. versionadded:: 1.7
+
+* It's possible to opt-out from a ``Field`` inherited from a parent class by
+ shadowing it. While any non-``Field`` value works for this purpose, it's
+ recommended to use ``None`` to make it explicit that a field is being
+ nullified.
+
.. _form-prefix:
Prefixes for forms
diff --git a/docs/releases/1.7.txt b/docs/releases/1.7.txt
index 87bf8481a0..5c208e22ac 100644
--- a/docs/releases/1.7.txt
+++ b/docs/releases/1.7.txt
@@ -293,6 +293,9 @@ Forms
inheriting from both ``Form`` and ``ModelForm`` simultaneously have been
removed as long as ``ModelForm`` appears first in the MRO.
+* It's now possible to opt-out from a ``Form`` field declared in a parent class
+ by shadowing it with a non-``Field`` value.
+
Internationalization
^^^^^^^^^^^^^^^^^^^^
diff --git a/docs/topics/forms/modelforms.txt b/docs/topics/forms/modelforms.txt
index edf9de17dd..2a48aa75dc 100644
--- a/docs/topics/forms/modelforms.txt
+++ b/docs/topics/forms/modelforms.txt
@@ -651,6 +651,18 @@ There are a couple of things to note, however.
because these classes rely on different metaclasses and a class can only have
one metaclass.
+.. versionadded:: 1.7
+
+* It's possible to opt-out from a ``Field`` inherited from a parent class by
+ shadowing it. While any non-``Field`` value works for this purpose, it's
+ recommended to use ``None`` to make it explicit that a field is being
+ nullified.
+
+ You can only use this technique to opt out from a field defined declaratively
+ by a parent class; it won't prevent the ``ModelForm`` metaclass from generating
+ a default field. To opt-out from default fields, see
+ :ref:`controlling-fields-with-fields-and-exclude`.
+
.. _modelforms-factory:
ModelForm factory function
@@ -749,6 +761,8 @@ instances of the model, you can specify an empty QuerySet::
>>> AuthorFormSet(queryset=Author.objects.none())
+.. _controlling-fields-with-fields-and-exclude:
+
Controlling which fields are used with ``fields`` and ``exclude``
-----------------------------------------------------------------