Login

BritishDateField

Author:
simon
Posted:
March 21, 2007
Language:
Python
Version:
Pre .96
Tags:
newforms
Score:
2 (after 2 ratings)

The date field in the newforms module includes American style mm/dd/yyyy , which anyone outside the US will recognise as being complete madness. This date field behaves sensibly.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
# The newforms library has these, but uses American style m/d/Y for two of 
# them.
BRITISH_DATE_INPUT_FORMATS = (
    '%Y-%m-%d', '%d/%m/%Y', '%d/%m/%y', # '2006-10-25', '25/10/2006', '25/10/06'
    '%b %d %Y', '%b %d, %Y',            # 'Oct 25 2006', 'Oct 25, 2006'
    '%d %b %Y', '%d %b, %Y',            # '25 Oct 2006', '25 Oct, 2006'
    '%B %d %Y', '%B %d, %Y',            # 'October 25 2006', 'October 25, 2006'
    '%d %B %Y', '%d %B, %Y',            # '25 October 2006', '25 October, 2006'
)

class BritishDateField(forms.DateField):
    def __init__(self, *args, **kwargs):
        super(BritishDateField, self).__init__(
            BRITISH_DATE_INPUT_FORMATS, *args, **kwargs
        )

More like this

  1. Natural language date/time form fields by jdriscoll 7 years, 9 months ago
  2. Drop down Datefield by lurker 7 years, 7 months ago
  3. Credit Card With Newforms by MasonM 6 years, 8 months ago
  4. Newforms Validation of Credit Card Numbers by humphreymurray 6 years, 10 months ago
  5. Parse datetime model field to string by jzelez 4 years, 9 months ago

Comments

Please login first before commenting.