django FormFields using the Chosen javascript plugin for jQuery
JavaScript Python
Pull request Compare This branch is 1 commit ahead, 17 commits behind theatlantic:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


django-chosen is a project that makes available django FormFields that uses the Chosen javascript plugin. It was created by developers at The Atlantic.


The recommended way to install from source is with pip:

    $ pip install -e git+git://

If the source is already checked out, use setuptools:

    $ python install


django-chosen makes the following fields and widget available:


  • ChosenChoiceField
  • ChosenModelChoiceField
  • ChosenMultipleChoiceField
  • ChosenModelMultipleChoiceField


  • ChosenSelect
  • ChosenSelectMultiple

The django-chosen fields can be passed an optional kwarg overlay that overrides the text which appears when no option is selected in the dropdown.


from django import forms
from chosen import forms as chosenforms

class BookForm(forms.Form):
    name = forms.CharField(max_length=100)
    quality = chosenforms.ChosenChoiceField(overlay="Select book quality...",
        choices=(('New', 'new'), ('Used', 'used')))
    authors = chosenforms.ChosenModelMultipleChoiceField(queryset=Author.objects.all())


The django code is licensed under the Simplified BSD License and is copyright The Atlantic Media Company. View the LICENSE file under the root directory for complete license and copyright information.

The Chosen javascript library included is licensed under the MIT License. View chosen/media/js/ for complete license and copyright information about the Chosen javascript library.

Chosen Javascript Documentation

Chosen is a library for making long, unwieldy select boxes more user friendly.

  • jQuery support: 1.4+
  • Prototype support: 1.7+

For documentation, usage, and examples, see Harvest's Chosen JS github

Chosen Javascript Credits