Skip to content

Instantly share code, notes, and snippets.

@davidbgk
Created October 28, 2010 10:30
Show Gist options
  • Star 22 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save davidbgk/651080 to your computer and use it in GitHub Desktop.
Save davidbgk/651080 to your computer and use it in GitHub Desktop.
Easily add an empty choice to a Django ChoiceField
from django import forms
class EmptyChoiceField(forms.ChoiceField):
def __init__(self, choices=(), empty_label=None, required=True, widget=None, label=None,
initial=None, help_text=None, *args, **kwargs):
# prepend an empty label if it exists (and field is not required!)
if not required and empty_label is not None:
choices = tuple([(u'', empty_label)] + list(choices))
super(EmptyChoiceField, self).__init__(choices=choices, required=required, widget=widget, label=label,
initial=initial, help_text=help_text, *args, **kwargs)
@cristihainic
Copy link

Thanks!!

Copy link

ghost commented Apr 24, 2019

Nice, thanks!

@alex-re
Copy link

alex-re commented Jan 23, 2021

thanks for your nice idea after 10 years !

@ddahan
Copy link

ddahan commented May 10, 2022

thanks for your nice idea after 12 years !

@davidbgk
Copy link
Author

🙌

@OGBoomer
Copy link

Still relavant

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment