Django

Code

Changeset 1872

Show
Ignore:
Timestamp:
01/08/06 18:54:35 (2 years ago)
Author:
adrian
Message:

Fixed #1188 -- Changed TimeField?.html2python to handle microseconds. Thanks, Cheng

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/AUTHORS

    r1853 r1872  
    9696    wojtek 
    9797    ye7cakf02@sneakemail.com 
     98    Cheng Zhang 
    9899 
    99100A big THANK YOU goes to: 
  • django/trunk/django/core/formfields.py

    r1732 r1872  
    747747class TimeField(TextField): 
    748748    """A FormField that automatically converts its data to a datetime.time object. 
    749     The data should be in the format HH:MM:SS.""" 
     749    The data should be in the format HH:MM:SS or HH:MM:SS.mmmmmm.""" 
    750750    def __init__(self, field_name, is_required=False, validator_list=[]): 
    751751        validator_list = [self.isValidTime] + validator_list 
     
    763763        import time, datetime 
    764764        try: 
     765            part_list = data.split('.') 
    765766            try: 
    766                 time_tuple = time.strptime(data, '%H:%M:%S') 
     767                time_tuple = time.strptime(part_list[0], '%H:%M:%S') 
    767768            except ValueError: # seconds weren't provided 
    768                 time_tuple = time.strptime(data, '%H:%M') 
    769             return datetime.time(*time_tuple[3:6]) 
     769                time_tuple = time.strptime(part_list[0], '%H:%M') 
     770            t = datetime.time(*time_tuple[3:6]) 
     771            if (len(part_list) == 2): 
     772                t = t.replace(microsecond=int(part_list[1])) 
     773            return t 
    770774        except (ValueError, TypeError): 
    771775            return None