Here's a bit of the testing I have run in the shell...
>>> from mysite2.profile.models import Profile
>>> from django import newforms
>>> from mysite2.admin import ProfileOptions
>>> # instantiate a Profile object
>>> test_profile = Profile.objects.get(id=1)

>>> # instantiate the adminoptions class
>>> # used by the admin site
>>> options = ProfileOptions(Profile)

>>> # create a form class for the profile instance
>>> form = newforms.form_for_instance(test_profile,formfield_callback = 
>>> options.formfield_for_dbfield)
>>> form


<class 'django.newforms.models.ProfileInstanceForm'>
>>> # check that the zip_code field is of type ZipCodeField
>>> form.base_fields['zip_code']


<mysite2.admin.ZipCodeField object at 0x1385dd0>
>>> # in my database, i currently have only one zip code
>>> # 90069, with a key of 1.

>>> form.base_fields['zip_code'].initial
1

>>> form.base_fields['zip_code'].clean(value='90069')
1

>>> form.base_fields['zip_code'].clean(value='111')


Traceback (most recent call last):
  File "<console>", line 1, in ?
  File "Sites/Django/mysite2/../mysite2/admin.py", line 40, in clean
    raise ValidationError, "Please enter a valid zip code."
ValidationError: [u'Please enter a valid zip code.']
>>> form.base_fields['zip_code'].clean(value='')


Traceback (most recent call last):
  File "<console>", line 1, in ?
  File "/Users/leifstrickland/Sites/DjangoProject/mysite2/../mysite2/
admin.py", line 40, in clean
    raise ValidationError, "Please enter a valid zip code."
ValidationError: [u'Please enter a valid zip code.']
>>> zip_code_field = form.base_fields['zip_code']
>>> zip_code_field.widget.render(name='zip_code',value=1)


u'<input type="text" name="zip_code" value="90069" />'
>>> zip_code_field.widget.render(name='zip_code',value='')


u'<input type="text" name="zip_code" />'
As you can see, everything seems to be working. I'm so puzzled...



--~--~---------~--~----~------------~-------~--~----~
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 [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to