Django

Code

Changeset 4556

Show
Ignore:
Timestamp:
02/20/07 23:59:46 (2 years ago)
Author:
adrian
Message:

Changed database PhoneNumberField? to use USPhoneNumberField as its newforms form field (instead of IntegerField?)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/django/db/models/fields/__init__.py

    r4505 r4556  
    749749        validators.isValidPhone(field_data, all_data) 
    750750 
     751    def formfield(self, **kwargs): 
     752        from django.contrib.localflavor.usa.forms import USPhoneNumberField 
     753        defaults = {'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} 
     754        defaults.update(kwargs) 
     755        return USPhoneNumberField(**defaults) 
     756 
    751757class PositiveIntegerField(IntegerField): 
    752758    def get_manipulator_field_objs(self): 
  • django/trunk/tests/modeltests/model_forms/models.py

    r4552 r4556  
    5454    def __str__(self): 
    5555        return self.headline 
     56 
     57class PhoneNumber(models.Model): 
     58    phone = models.PhoneNumberField() 
     59    description = models.CharField(maxlength=20) 
     60 
     61    def __str__(self): 
     62        return self.phone 
    5663 
    5764__test__ = {'API_TESTS': """ 
     
    446453... 
    447454ValidationError: [u'Select a valid choice. 10 is not one of the available choices.'] 
     455 
     456# PhoneNumberField ############################################################ 
     457 
     458>>> PhoneNumberForm = form_for_model(PhoneNumber) 
     459>>> f = PhoneNumberForm({'phone': '(312) 555-1212', 'description': 'Assistance'}) 
     460>>> f.is_valid() 
     461True 
     462>>> f.clean_data 
     463{'phone': u'312-555-1212', 'description': u'Assistance'} 
    448464"""}