Files
postgres-web/dep/django-selectable/docs/fields.rst
Magnus Hagander 6ffc1d4811 Import newer version of django-selectable
Sync up to the same version we have on the commitfest app, which will
also be required for eventual django 1.11 support.
2018-03-09 16:43:49 -05:00

60 lines
1.9 KiB
ReStructuredText

Fields
==========
Django-Selectable defines a number of fields for selecting either single or multiple
lookup items. Item in this context corresponds to the object return by the underlying
lookup ``get_item``. The single select select field :ref:`AutoCompleteSelectField`
allows for the creation of new items. To use this feature the field's
lookup class must define ``create_item``. In the case of lookups extending from
:ref:`ModelLookup` newly created items have not yet been saved into the database and saving
should be handled by the form. All fields take the lookup class as the first required
argument.
.. _AutoCompleteSelectField:
AutoCompleteSelectField
--------------------------------------
Field tied to :ref:`AutoCompleteSelectWidget` to bind the selection to the form and
create new items, if allowed. The ``allow_new`` keyword argument (default: ``False``)
which determines if the field allows new items. This field cleans to a single item.
.. code-block:: python
from django import forms
from selectable.forms import AutoCompleteSelectField
from .lookups import FruitLookup
class FruitSelectionForm(forms.Form):
fruit = AutoCompleteSelectField(lookup_class=FruitLookup, label='Select a fruit')
`lookup_class`` may also be a dotted path.
.. _AutoCompleteSelectMultipleField:
AutoCompleteSelectMultipleField
--------------------------------------
Field tied to :ref:`AutoCompleteSelectMultipleWidget` to bind the selection to the form.
This field cleans to a list of items. :ref:`AutoCompleteSelectMultipleField` does not
allow for the creation of new items.
.. code-block:: python
from django import forms
from selectable.forms import AutoCompleteSelectMultipleField
from .lookups import FruitLookup
class FruitsSelectionForm(forms.Form):
fruits = AutoCompleteSelectMultipleField(lookup_class=FruitLookup,
label='Select your favorite fruits')