summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2013-07-08 08:29:28 -0400
committerTim Graham <timograham@gmail.com>2013-07-08 08:29:28 -0400
commit181f63c22dc0de823031be84b86277b282e4e221 (patch)
tree39fb8f2392f108b17d7008a9006a03ad972eda3e /docs
parent9383e37a7636879a0f889c0bca38675f7fc85f5b (diff)
Fixed #12346 -- Added a note on how to validate InlineFormSets.
Thanks johnsmith for the suggestion.
Diffstat (limited to 'docs')
-rw-r--r--docs/ref/contrib/admin/index.txt11
-rw-r--r--docs/ref/forms/models.txt4
-rw-r--r--docs/topics/forms/modelforms.txt17
3 files changed, 22 insertions, 10 deletions
diff --git a/docs/ref/contrib/admin/index.txt b/docs/ref/contrib/admin/index.txt
index 70db52941c..a22a51e8fb 100644
--- a/docs/ref/contrib/admin/index.txt
+++ b/docs/ref/contrib/admin/index.txt
@@ -1713,9 +1713,9 @@ The ``InlineModelAdmin`` class adds:
.. attribute:: InlineModelAdmin.formset
- This defaults to ``BaseInlineFormSet``. Using your own formset can give you
- many possibilities of customization. Inlines are built around
- :ref:`model formsets <model-formsets>`.
+ This defaults to :class:`~django.forms.models.BaseInlineFormSet`. Using
+ your own formset can give you many possibilities of customization. Inlines
+ are built around :ref:`model formsets <model-formsets>`.
.. attribute:: InlineModelAdmin.form
@@ -1791,8 +1791,9 @@ The ``InlineModelAdmin`` class adds:
.. method:: InlineModelAdmin.get_formset(self, request, obj=None, **kwargs)
- Returns a ``BaseInlineFormSet`` class for use in admin add/change views.
- See the example for :class:`ModelAdmin.get_formsets`.
+ Returns a :class:`~django.forms.models.BaseInlineFormSet` class for use in
+ admin add/change views. See the example for
+ :class:`ModelAdmin.get_formsets`.
.. method:: InlineModelAdmin.get_extra(self, request, obj=None, **kwargs)
diff --git a/docs/ref/forms/models.txt b/docs/ref/forms/models.txt
index 840a896d75..1d2b468553 100644
--- a/docs/ref/forms/models.txt
+++ b/docs/ref/forms/models.txt
@@ -69,8 +69,8 @@ Model Form Functions
.. function:: inlineformset_factory(parent_model, model, form=ModelForm, formset=BaseInlineFormSet, fk_name=None, fields=None, exclude=None, extra=3, can_order=False, can_delete=True, max_num=None, formfield_callback=None, widgets=None, validate_max=False, localized_fields=None, labels=None, help_texts=None, error_messages=None)
Returns an ``InlineFormSet`` using :func:`modelformset_factory` with
- defaults of ``formset=BaseInlineFormSet``, ``can_delete=True``, and
- ``extra=3``.
+ defaults of ``formset=``:class:`~django.forms.models.BaseInlineFormSet`,
+ ``can_delete=True``, and ``extra=3``.
If your model has more than one :class:`~django.db.models.ForeignKey` to
the ``parent_model``, you must specify a ``fk_name``.
diff --git a/docs/topics/forms/modelforms.txt b/docs/topics/forms/modelforms.txt
index d961ee41d5..381a97f25a 100644
--- a/docs/topics/forms/modelforms.txt
+++ b/docs/topics/forms/modelforms.txt
@@ -857,14 +857,16 @@ than that of a "normal" formset. The only difference is that we call
``formset.save()`` to save the data into the database. (This was described
above, in :ref:`saving-objects-in-the-formset`.)
-Overiding ``clean()`` on a ``model_formset``
+.. _model-formsets-overriding-clean:
+
+Overriding ``clean()`` on a ``ModelFormSet``
--------------------------------------------
Just like with ``ModelForms``, by default the ``clean()`` method of a
-``model_formset`` will validate that none of the items in the formset violate
+``ModelFormSet`` will validate that none of the items in the formset violate
the unique constraints on your model (either ``unique``, ``unique_together`` or
``unique_for_date|month|year``). If you want to override the ``clean()`` method
-on a ``model_formset`` and maintain this validation, you must call the parent
+on a ``ModelFormSet`` and maintain this validation, you must call the parent
class's ``clean`` method::
from django.forms.models import BaseModelFormSet
@@ -969,6 +971,8 @@ primary key that isn't called ``id``, make sure it gets rendered.)
Inline formsets
===============
+.. class:: models.BaseInlineFormSet
+
Inline formsets is a small abstraction layer on top of model formsets. These
simplify the case of working with related objects via a foreign key. Suppose
you have these two models::
@@ -1000,6 +1004,13 @@ a particular author, you could do this::
:ref:`Manually rendered can_delete and can_order <manually-rendered-can-delete-and-can-order>`.
+Overriding ``clean()`` on an ``InlineFormSet``
+----------------------------------------------
+
+See :ref:`model-formsets-overriding-clean`, but subclass
+:class:`~models.BaseInlineFormSet` rather than
+:class:`~models.BaseModelFormSet`.
+
More than one foreign key to the same model
-------------------------------------------