diff --git a/django/contrib/localflavor/mx/__init__.py b/django/contrib/localflavor/mx/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/django/contrib/localflavor/mx/forms.py b/django/contrib/localflavor/mx/forms.py new file mode 100644 index 0000000000..5e42cca7d7 --- /dev/null +++ b/django/contrib/localflavor/mx/forms.py @@ -0,0 +1,14 @@ +""" +Mexican-specific form helpers. +""" + +from django.newforms.fields import Select + +class MXStateSelect(Select): + """ + A Select widget that uses a list of Mexican states as its choices. + """ + def __init__(self, attrs=None): + from mx_states import STATE_CHOICES + super(MXStateSelect, self).__init__(attrs, choices=STATE_CHOICES) + diff --git a/django/contrib/localflavor/mx/mx_states.py b/django/contrib/localflavor/mx/mx_states.py new file mode 100644 index 0000000000..eed1700efb --- /dev/null +++ b/django/contrib/localflavor/mx/mx_states.py @@ -0,0 +1,45 @@ +# -*- coding: utf-8 -*- +""" +A list of Mexican states for use as `choices` in a formfield. + +This exists in this standalone file so that it's only imported into memory +when explicitly needed. +""" + +from django.utils.translation import ugettext_lazy as _ + +STATE_CHOICES = ( + ('AGU', _(u'Aguascalientes')), + ('BCN', _(u'Baja California')), + ('BCS', _(u'Baja California Sur')), + ('CAM', _(u'Campeche')), + ('CHH', _(u'Chihuahua')), + ('CHP', _(u'Chiapas')), + ('COA', _(u'Coahuila')), + ('COL', _(u'Colima')), + ('DIF', _(u'Distrito Federal')), + ('DUR', _(u'Durango')), + ('GRO', _(u'Guerrero')), + ('GUA', _(u'Guanajuato')), + ('HID', _(u'Hidalgo')), + ('JAL', _(u'Jalisco')), + ('MEX', _(u'Estado de México')), + ('MIC', _(u'Michoacán')), + ('MOR', _(u'Morelos')), + ('NAY', _(u'Nayarit')), + ('NLE', _(u'Nuevo León')), + ('OAX', _(u'Oaxaca')), + ('PUE', _(u'Puebla')), + ('QUE', _(u'Querétaro')), + ('ROO', _(u'Quintana Roo')), + ('SIN', _(u'Sinaloa')), + ('SLP', _(u'San Luis Potosí')), + ('SON', _(u'Sonora')), + ('TAB', _(u'Tabasco')), + ('TAM', _(u'Tamaulipas')), + ('TLA', _(u'Tlaxcala')), + ('VER', _(u'Veracruz')), + ('YUC', _(u'Yucatán')), + ('ZAC', _(u'Zacatecas')), +) +