Remove (None, "No Period") from your choices and left the required=False on your form field. That should work.
Rgds, Marcos On Fri, Feb 4, 2011 at 11:31 AM, Marc Aymerich <glicer...@gmail.com> wrote: > On Fri, Feb 4, 2011 at 12:12 PM, Tom Evans <tevans...@googlemail.com> > wrote: > > On Fri, Feb 4, 2011 at 11:07 AM, Marc Aymerich <glicer...@gmail.com> > wrote: > >> Hi > >> In some choices widgets I want to represent null values as u'No > >> period' instead of u'--------' > >> > >> I try with: > >> > >> PERIOD_CHOICES = getattr(settings, 'PERIOD_CHOICES', > >> ((None, > >> ugettext('No Period')), > >> (DAILY, > ugettext('Daily')), > >> (MONTHLY, > >> ugettext('Monthly')), > >> (ANUAL, > ugettext('Anual')), > >> )) > >> period = models.CharField(max_length=1, > >> choices=settings.PERIOD_CHOICES, null=True) > >> > >> But when I choose "No Period" I get this form validation error: Value > >> u'None' is not a valid choice. > >> > >> Any idea? > >> Thanks! > > > > form.Field doesn't take null as an option, you want required[1]: > > > > """ > > By default, each Field class assumes the value is required, so if you > > pass an empty value -- either None or the empty string ("") -- then > > clean() will raise a ValidationError exception: > > """ > > > > Cheers > > > > Tom > > > > [1] http://docs.djangoproject.com/en/1.2/ref/forms/fields/#required > > > Hi Tom, > I override the default admin form with this: > > class MonitorAdminForm(ModelForm): > class Meta: > model = Monitor > period = forms.ChoiceField(required=False, choices = > settings.PERIOD_CHOICES) > > Now period has required=False but still raise the validation error: > Value u'None' is not a valid choice. > > What is strange for me is although I put the None value on > PERIOD_CHOICES the error seems to say that None is interpreted as a > unicode instead of None. Maybe this is the point, if it's, how can I > declare a null value in PERIOD_CHOICES definition ? > > Thanks! > > > > > > -- > Marc > > -- > You received this message because you are subscribed to the Google Groups > "Django users" group. > To post to this group, send email to django-users@googlegroups.com. > To unsubscribe from this group, send email to > django-users+unsubscr...@googlegroups.com<django-users%2bunsubscr...@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/django-users?hl=en. > > -- Some people, when confronted with a problem, think “I know, I'll use regular expressions.” Now they have two problems. Jamie Zawinski, in comp.emacs.xemacs -- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.