Permalink
Browse files

Fixed #7980 - Improved i18n framework to support locale aware formatt…

…ing (dates and numbers) and form processing.

Thanks to Marc Garcia for working on this during his Google Summer of Code 2009!

Additionally fixes #1061, #2203, #3940, #5526, #6449, #6231, #6693, #6783, #9366 and #10891.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@11964 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
1 parent 6632739 commit 9233d0426537615e06b78d28010d17d5a66adf44 @jezdez jezdez committed Dec 22, 2009
Showing with 2,314 additions and 356 deletions.
  1. +74 −0 django/conf/global_settings.py
  2. 0 django/conf/locale/__init__.py
  3. 0 django/conf/locale/ar/__init__.py
  4. +18 −0 django/conf/locale/ar/formats.py
  5. 0 django/conf/locale/bg/__init__.py
  6. +18 −0 django/conf/locale/bg/formats.py
  7. 0 django/conf/locale/bn/__init__.py
  8. +18 −0 django/conf/locale/bn/formats.py
  9. 0 django/conf/locale/ca/__init__.py
  10. +30 −0 django/conf/locale/ca/formats.py
  11. 0 django/conf/locale/cs/__init__.py
  12. +18 −0 django/conf/locale/cs/formats.py
  13. 0 django/conf/locale/cy/__init__.py
  14. +18 −0 django/conf/locale/cy/formats.py
  15. 0 django/conf/locale/da/__init__.py
  16. +26 −0 django/conf/locale/da/formats.py
  17. 0 django/conf/locale/de/__init__.py
  18. +32 −0 django/conf/locale/de/formats.py
  19. 0 django/conf/locale/el/__init__.py
  20. +18 −0 django/conf/locale/el/formats.py
  21. 0 django/conf/locale/en/__init__.py
  22. +38 −0 django/conf/locale/en/formats.py
  23. 0 django/conf/locale/es/__init__.py
  24. +30 −0 django/conf/locale/es/formats.py
  25. 0 django/conf/locale/es_AR/__init__.py
  26. +18 −0 django/conf/locale/es_AR/formats.py
  27. 0 django/conf/locale/et/__init__.py
  28. +18 −0 django/conf/locale/et/formats.py
  29. 0 django/conf/locale/eu/__init__.py
  30. +18 −0 django/conf/locale/eu/formats.py
  31. 0 django/conf/locale/fa/__init__.py
  32. +18 −0 django/conf/locale/fa/formats.py
  33. 0 django/conf/locale/fi/__init__.py
  34. +18 −0 django/conf/locale/fi/formats.py
  35. 0 django/conf/locale/fr/__init__.py
  36. +18 −0 django/conf/locale/fr/formats.py
  37. 0 django/conf/locale/ga/__init__.py
  38. +18 −0 django/conf/locale/ga/formats.py
  39. 0 django/conf/locale/gl/__init__.py
  40. +18 −0 django/conf/locale/gl/formats.py
  41. 0 django/conf/locale/he/__init__.py
  42. +18 −0 django/conf/locale/he/formats.py
  43. 0 django/conf/locale/hi/__init__.py
  44. +18 −0 django/conf/locale/hi/formats.py
  45. 0 django/conf/locale/hr/__init__.py
  46. +18 −0 django/conf/locale/hr/formats.py
  47. 0 django/conf/locale/hu/__init__.py
  48. +18 −0 django/conf/locale/hu/formats.py
  49. 0 django/conf/locale/is/__init__.py
  50. +18 −0 django/conf/locale/is/formats.py
  51. 0 django/conf/locale/it/__init__.py
  52. +18 −0 django/conf/locale/it/formats.py
  53. 0 django/conf/locale/ja/__init__.py
  54. +18 −0 django/conf/locale/ja/formats.py
  55. 0 django/conf/locale/ka/__init__.py
  56. +42 −0 django/conf/locale/ka/formats.py
  57. 0 django/conf/locale/km/__init__.py
  58. +18 −0 django/conf/locale/km/formats.py
  59. 0 django/conf/locale/kn/__init__.py
  60. +18 −0 django/conf/locale/kn/formats.py
  61. 0 django/conf/locale/ko/__init__.py
  62. +44 −0 django/conf/locale/ko/formats.py
  63. 0 django/conf/locale/lt/__init__.py
  64. +18 −0 django/conf/locale/lt/formats.py
  65. 0 django/conf/locale/lv/__init__.py
  66. +18 −0 django/conf/locale/lv/formats.py
  67. 0 django/conf/locale/mk/__init__.py
  68. +18 −0 django/conf/locale/mk/formats.py
  69. 0 django/conf/locale/nl/__init__.py
  70. +48 −0 django/conf/locale/nl/formats.py
  71. 0 django/conf/locale/no/__init__.py
  72. +34 −0 django/conf/locale/no/formats.py
  73. 0 django/conf/locale/pl/__init__.py
  74. +18 −0 django/conf/locale/pl/formats.py
  75. 0 django/conf/locale/pt/__init__.py
  76. +18 −0 django/conf/locale/pt/formats.py
  77. 0 django/conf/locale/pt_BR/__init__.py
  78. +35 −0 django/conf/locale/pt_BR/formats.py
  79. 0 django/conf/locale/ro/__init__.py
  80. +18 −0 django/conf/locale/ro/formats.py
  81. 0 django/conf/locale/ru/__init__.py
  82. +18 −0 django/conf/locale/ru/formats.py
  83. 0 django/conf/locale/sk/__init__.py
  84. +18 −0 django/conf/locale/sk/formats.py
  85. 0 django/conf/locale/sl/__init__.py
  86. +18 −0 django/conf/locale/sl/formats.py
  87. 0 django/conf/locale/sr/__init__.py
  88. +44 −0 django/conf/locale/sr/formats.py
  89. 0 django/conf/locale/sr_Latn/__init__.py
  90. +44 −0 django/conf/locale/sr_Latn/formats.py
  91. 0 django/conf/locale/sv/__init__.py
  92. +18 −0 django/conf/locale/sv/formats.py
  93. 0 django/conf/locale/ta/__init__.py
  94. +18 −0 django/conf/locale/ta/formats.py
  95. 0 django/conf/locale/te/__init__.py
  96. +18 −0 django/conf/locale/te/formats.py
  97. 0 django/conf/locale/th/__init__.py
  98. +18 −0 django/conf/locale/th/formats.py
  99. 0 django/conf/locale/tr/__init__.py
  100. +18 −0 django/conf/locale/tr/formats.py
  101. 0 django/conf/locale/uk/__init__.py
  102. +18 −0 django/conf/locale/uk/formats.py
  103. 0 django/conf/locale/zh_CN/__init__.py
  104. +18 −0 django/conf/locale/zh_CN/formats.py
  105. 0 django/conf/locale/zh_TW/__init__.py
  106. +18 −0 django/conf/locale/zh_TW/formats.py
  107. +3 −2 django/contrib/admin/media/js/calendar.js
  108. +1 −1 django/contrib/admin/templates/admin/object_history.html
  109. +18 −20 django/contrib/admin/templatetags/admin_list.py
  110. +4 −6 django/contrib/databrowse/datastructures.py
  111. +45 −32 django/forms/extras/widgets.py
  112. +28 −33 django/forms/fields.py
  113. +2 −1 django/forms/widgets.py
  114. +2 −0 django/template/__init__.py
  115. +4 −1 django/template/debug.py
  116. +13 −6 django/template/defaultfilters.py
  117. +97 −0 django/utils/formats.py
  118. +42 −0 django/utils/numberformat.py
  119. +21 −2 django/utils/translation/trans_null.py
  120. +53 −35 django/utils/translation/trans_real.py
  121. +26 −3 django/views/i18n.py
  122. +12 −0 docs/internals/deprecation.txt
  123. +205 −16 docs/ref/settings.txt
  124. +13 −4 docs/ref/templates/builtins.txt
  125. +45 −0 docs/releases/1.2.txt
  126. +64 −8 docs/topics/i18n.txt
  127. +0 −114 tests/regressiontests/i18n/misc.py
  128. +375 −72 tests/regressiontests/i18n/tests.py
@@ -103,6 +103,10 @@
LOCALE_PATHS = ()
LANGUAGE_COOKIE_NAME = 'django_language'
+# If you set this to True, Django will format dates, numbers and calendars
+# according to user current locale
+USE_L10N = False
+
# Not-necessarily-technical managers of the site. They get broken link
# notifications and other various e-mails.
MANAGERS = ADMINS
@@ -265,6 +269,12 @@
# you'd pass directly to os.chmod; see http://docs.python.org/lib/os-file-dir.html.
FILE_UPLOAD_PERMISSIONS = None
+# Python module path where user will place custom format definition.
+# The directory where this setting is pointing should contain subdirectories
+# named as the locales, containing a formats.py file
+# (i.e. "myproject.locale" for myproject/locale/en/formats.py etc. use)
+FORMAT_MODULE_PATH = None
+
# Default formatting for date objects. See all available format strings here:
# http://docs.djangoproject.com/en/dev/ref/templates/builtins/#now
DATE_FORMAT = 'N j, Y'
@@ -287,6 +297,70 @@
# http://docs.djangoproject.com/en/dev/ref/templates/builtins/#now
MONTH_DAY_FORMAT = 'F j'
+# Default shortformatting for date objects. See all available format strings here:
+# http://docs.djangoproject.com/en/dev/ref/templates/builtins/#now
+SHORT_DATE_FORMAT = 'm/d/Y'
+
+# Default short formatting for datetime objects.
+# See all available format strings here:
+# http://docs.djangoproject.com/en/dev/ref/templates/builtins/#now
+SHORT_DATETIME_FORMAT = 'm/d/Y P'
+
+# Default formats to be used when parsing dates from input boxes, in order
+# See all available format string here:
+# http://docs.python.org/library/datetime.html#strftime-behavior
+# * Note that these format strings are different from the ones to display dates
+DATE_INPUT_FORMATS = (
+ '%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', # '2006-10-25', '10/25/2006', '10/25/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'
+)
+
+# Default formats to be used when parsing times from input boxes, in order
+# See all available format string here:
+# http://docs.python.org/library/datetime.html#strftime-behavior
+# * Note that these format strings are different from the ones to display dates
+TIME_INPUT_FORMATS = (
+ '%H:%M:%S', # '14:30:59'
+ '%H:%M', # '14:30'
+)
+
+# Default formats to be used when parsing dates and times from input boxes,
+# in order
+# See all available format string here:
+# http://docs.python.org/library/datetime.html#strftime-behavior
+# * Note that these format strings are different from the ones to display dates
+DATETIME_INPUT_FORMATS = (
+ '%Y-%m-%d %H:%M:%S', # '2006-10-25 14:30:59'
+ '%Y-%m-%d %H:%M', # '2006-10-25 14:30'
+ '%Y-%m-%d', # '2006-10-25'
+ '%m/%d/%Y %H:%M:%S', # '10/25/2006 14:30:59'
+ '%m/%d/%Y %H:%M', # '10/25/2006 14:30'
+ '%m/%d/%Y', # '10/25/2006'
+ '%m/%d/%y %H:%M:%S', # '10/25/06 14:30:59'
+ '%m/%d/%y %H:%M', # '10/25/06 14:30'
+ '%m/%d/%y', # '10/25/06'
+)
+
+# First day of week, to be used on calendars
+# 0 means Sunday, 1 means Monday...
+FIRST_DAY_OF_WEEK = 0
+
+# Decimal separator symbol
+DECIMAL_SEPARATOR = '.'
+
+# Boolean that sets whether to add thousand separator when formatting numbers
+USE_THOUSAND_SEPARATOR = False
+
+# Number of digits that will be togheter, when spliting them by THOUSAND_SEPARATOR
+# 0 means no grouping, 3 means splitting by thousands...
+NUMBER_GROUPING = 0
+
+# Thousand separator symbol
+THOUSAND_SEPARATOR = ','
+
# Do you want to manage transactions manually?
# Hint: you really don't!
TRANSACTIONS_MANAGED = False
No changes.
No changes.
@@ -0,0 +1,18 @@
+# -*- encoding: utf-8 -*-
+# This file is distributed under the same license as the Django package.
+#
+
+DATE_FORMAT = 'j F، Y'
+TIME_FORMAT = 'g:i:s A'
+# DATETIME_FORMAT =
+YEAR_MONTH_FORMAT = 'F Y'
+MONTH_DAY_FORMAT = 'j F'
+SHORT_DATE_FORMAT = 'd‏/m‏/Y'
+# SHORT_DATETIME_FORMAT =
+# FIRST_DAY_OF_WEEK =
+# DATE_INPUT_FORMATS =
+# TIME_INPUT_FORMATS =
+# DATETIME_INPUT_FORMATS =
+DECIMAL_SEPARATOR = ','
+THOUSAND_SEPARATOR = '.'
+# NUMBER_GROUPING =
No changes.
@@ -0,0 +1,18 @@
+# -*- encoding: utf-8 -*-
+# This file is distributed under the same license as the Django package.
+#
+
+DATE_FORMAT = 'd F Y'
+TIME_FORMAT = 'H:i:s'
+# DATETIME_FORMAT =
+# YEAR_MONTH_FORMAT =
+MONTH_DAY_FORMAT = 'j F'
+SHORT_DATE_FORMAT = 'd.m.Y'
+# SHORT_DATETIME_FORMAT =
+# FIRST_DAY_OF_WEEK =
+# DATE_INPUT_FORMATS =
+# TIME_INPUT_FORMATS =
+# DATETIME_INPUT_FORMATS =
+DECIMAL_SEPARATOR = ','
+THOUSAND_SEPARATOR = ' '
+# NUMBER_GROUPING =
No changes.
@@ -0,0 +1,18 @@
+# -*- encoding: utf-8 -*-
+# This file is distributed under the same license as the Django package.
+#
+
+DATE_FORMAT = 'j F, Y'
+TIME_FORMAT = 'g:i:s A'
+# DATETIME_FORMAT =
+YEAR_MONTH_FORMAT = 'F Y'
+MONTH_DAY_FORMAT = 'j F'
+SHORT_DATE_FORMAT = 'j M, Y'
+# SHORT_DATETIME_FORMAT =
+# FIRST_DAY_OF_WEEK =
+# DATE_INPUT_FORMATS =
+# TIME_INPUT_FORMATS =
+# DATETIME_INPUT_FORMATS =
+DECIMAL_SEPARATOR = '.'
+THOUSAND_SEPARATOR = ','
+# NUMBER_GROUPING =
No changes.
@@ -0,0 +1,30 @@
+# -*- encoding: utf-8 -*-
+# This file is distributed under the same license as the Django package.
+#
+
+DATE_FORMAT = 'j \de F \de Y'
+TIME_FORMAT = 'G:i:s'
+DATETIME_FORMAT = 'j \de F \de Y \\a \le\s G:i'
+YEAR_MONTH_FORMAT = 'F \de\l Y'
+MONTH_DAY_FORMAT = 'j \de F'
+SHORT_DATE_FORMAT = 'd/m/Y'
+SHORT_DATETIME_FORMAT = 'd/m/Y G:i'
+FIRST_DAY_OF_WEEK = 1 # Monday
+DATE_INPUT_FORMATS = (
+ # '31/12/2009', '31/12/09'
+ '%d/%m/%Y', '%d/%m/%y'
+)
+TIME_INPUT_FORMATS = (
+ # '14:30:59', '14:30'
+ '%H:%M:%S', '%H:%M'
+)
+DATETIME_INPUT_FORMATS = (
+ '%d/%m/%Y %H:%M:%S',
+ '%d/%m/%Y %H:%M',
+ '%d/%m/%y %H:%M:%S',
+ '%d/%m/%y %H:%M',
+)
+DECIMAL_SEPARATOR = ','
+THOUSAND_SEPARATOR = '.'
+NUMBER_GROUPING = 3
+
No changes.
@@ -0,0 +1,18 @@
+# -*- encoding: utf-8 -*-
+# This file is distributed under the same license as the Django package.
+#
+
+DATE_FORMAT = 'j. F Y'
+TIME_FORMAT = 'G:i:s'
+# DATETIME_FORMAT =
+# YEAR_MONTH_FORMAT =
+MONTH_DAY_FORMAT = 'j. F'
+SHORT_DATE_FORMAT = 'j.n.Y'
+# SHORT_DATETIME_FORMAT =
+# FIRST_DAY_OF_WEEK =
+# DATE_INPUT_FORMATS =
+# TIME_INPUT_FORMATS =
+# DATETIME_INPUT_FORMATS =
+DECIMAL_SEPARATOR = ','
+THOUSAND_SEPARATOR = ' '
+# NUMBER_GROUPING =
No changes.
@@ -0,0 +1,18 @@
+# -*- encoding: utf-8 -*-
+# This file is distributed under the same license as the Django package.
+#
+
+DATE_FORMAT = 'd F Y'
+TIME_FORMAT = 'g:i:s A'
+# DATETIME_FORMAT =
+# YEAR_MONTH_FORMAT =
+# MONTH_DAY_FORMAT =
+SHORT_DATE_FORMAT = 'j M Y'
+# SHORT_DATETIME_FORMAT =
+# FIRST_DAY_OF_WEEK =
+# DATE_INPUT_FORMATS =
+# TIME_INPUT_FORMATS =
+# DATETIME_INPUT_FORMATS =
+# DECIMAL_SEPARATOR =
+# THOUSAND_SEPARATOR =
+# NUMBER_GROUPING =
No changes.
@@ -0,0 +1,26 @@
+# -*- encoding: utf-8 -*-
+# This file is distributed under the same license as the Django package.
+#
+
+DATE_FORMAT = 'j. F Y'
+TIME_FORMAT = 'H:i'
+DATETIME_FORMAT = 'j. F Y H:i'
+YEAR_MONTH_FORMAT = 'F Y'
+MONTH_DAY_FORMAT = 'j. F'
+SHORT_DATE_FORMAT = 'd.m.Y'
+SHORT_DATETIME_FORMAT = 'd.m.Y H:i'
+FIRST_DAY_OF_WEEK = 1
+DATE_INPUT_FORMATS = (
+ '%d.%m.%Y', # '25.10.2006'
+)
+TIME_INPUT_FORMATS = (
+ '%H:%M:%S', # '14:30:59'
+ '%H:%M', # '14:30'
+)
+DATETIME_INPUT_FORMATS = (
+ '%d.%m.%Y %H:%M:%S', # '25.10.2006 14:30:59'
+ '%d.%m.%Y %H:%M', # '25.10.2006 14:30'
+)
+DECIMAL_SEPARATOR = ','
+THOUSAND_SEPARATOR = '.'
+NUMBER_GROUPING = 3
No changes.
@@ -0,0 +1,32 @@
+# -*- encoding: utf-8 -*-
+# This file is distributed under the same license as the Django package.
+#
+
+DATE_FORMAT = 'j. F Y'
+TIME_FORMAT = 'H:i:s'
+DATETIME_FORMAT = 'j. F Y H:i:s'
+YEAR_MONTH_FORMAT = 'F Y'
+MONTH_DAY_FORMAT = 'j. F'
+SHORT_DATE_FORMAT = 'd.m.Y'
+SHORT_DATETIME_FORMAT = 'd.m.Y H:i:s'
+FIRST_DAY_OF_WEEK = 1 # Monday
+DATE_INPUT_FORMATS = (
+ '%d.%m.%Y', '%d.%m.%y', # '25.10.2006', '25.10.06'
+ '%Y-%m-%d', '%y-%m-%d', # '2006-10-25', '06-10-25'
+ '%d. %B %Y', '%d. %b. %Y', # '25. October 2006', '25. Oct. 2006'
+)
+TIME_INPUT_FORMATS = (
+ '%H:%M:%S', # '14:30:59'
+ '%H:%M', # '14:30'
+)
+DATETIME_INPUT_FORMATS = (
+ '%d.%m.%Y %H:%M:%S', # '25.10.2006 14:30:59'
+ '%d.%m.%Y %H:%M', # '25.10.2006 14:30'
+ '%d.%m.%Y', # '25.10.2006'
+ '%Y-%m-%d %H:%M:%S', # '2006-10-25 14:30:59'
+ '%Y-%m-%d %H:%M', # '2006-10-25 14:30'
+ '%Y-%m-%d', # '2006-10-25'
+)
+DECIMAL_SEPARATOR = ','
+THOUSAND_SEPARATOR = '.'
+NUMBER_GROUPING = 3
No changes.
@@ -0,0 +1,18 @@
+# -*- encoding: utf-8 -*-
+# This file is distributed under the same license as the Django package.
+#
+
+DATE_FORMAT = 'd F Y'
+TIME_FORMAT = 'g:i:s A'
+# DATETIME_FORMAT =
+YEAR_MONTH_FORMAT = 'F Y'
+MONTH_DAY_FORMAT = 'j F'
+SHORT_DATE_FORMAT = 'd M Y'
+# SHORT_DATETIME_FORMAT =
+# FIRST_DAY_OF_WEEK =
+# DATE_INPUT_FORMATS =
+# TIME_INPUT_FORMATS =
+# DATETIME_INPUT_FORMATS =
+DECIMAL_SEPARATOR = ','
+THOUSAND_SEPARATOR = '.'
+# NUMBER_GROUPING =
No changes.
@@ -0,0 +1,38 @@
+# -*- encoding: utf-8 -*-
+# This file is distributed under the same license as the Django package.
+#
+
+DATE_FORMAT = 'N j, Y'
+TIME_FORMAT = 'P'
+DATETIME_FORMAT = 'N j, Y, P'
+YEAR_MONTH_FORMAT = 'F Y'
+MONTH_DAY_FORMAT = 'F j'
+SHORT_DATE_FORMAT = 'm/d/Y'
+SHORT_DATETIME_FORMAT = 'm/d/Y P'
+FIRST_DAY_OF_WEEK = 0 # Sunday
+DATE_INPUT_FORMATS = (
+ '%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', # '2006-10-25', '10/25/2006', '10/25/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'
+)
+TIME_INPUT_FORMATS = (
+ '%H:%M:%S', # '14:30:59'
+ '%H:%M', # '14:30'
+)
+DATETIME_INPUT_FORMATS = (
+ '%Y-%m-%d %H:%M:%S', # '2006-10-25 14:30:59'
+ '%Y-%m-%d %H:%M', # '2006-10-25 14:30'
+ '%Y-%m-%d', # '2006-10-25'
+ '%m/%d/%Y %H:%M:%S', # '10/25/2006 14:30:59'
+ '%m/%d/%Y %H:%M', # '10/25/2006 14:30'
+ '%m/%d/%Y', # '10/25/2006'
+ '%m/%d/%y %H:%M:%S', # '10/25/06 14:30:59'
+ '%m/%d/%y %H:%M', # '10/25/06 14:30'
+ '%m/%d/%y', # '10/25/06'
+)
+DECIMAL_SEPARATOR = '.'
+THOUSAND_SEPARATOR = ','
+NUMBER_GROUPING = 3
+
No changes.
@@ -0,0 +1,30 @@
+# -*- encoding: utf-8 -*-
+# This file is distributed under the same license as the Django package.
+#
+
+DATE_FORMAT = 'j \de F \de Y'
+TIME_FORMAT = 'H:i:s'
+DATETIME_FORMAT = 'j \de F \de Y \a \l\a\s H:i'
+YEAR_MONTH_FORMAT = 'F \de Y'
+MONTH_DAY_FORMAT = 'j \de F'
+SHORT_DATE_FORMAT = 'd/m/Y'
+SHORT_DATETIME_FORMAT = 'd/m/Y H:i'
+FIRST_DAY_OF_WEEK = 1 # Monday
+DATE_INPUT_FORMATS = (
+ # '31/12/2009', '31/12/09'
+ '%d/%m/%Y', '%d/%m/%y'
+)
+TIME_INPUT_FORMATS = (
+ # '14:30:59', '14:30'
+ '%H:%M:%S', '%H:%M'
+)
+DATETIME_INPUT_FORMATS = (
+ '%d/%m/%Y %H:%M:%S',
+ '%d/%m/%Y %H:%M',
+ '%d/%m/%y %H:%M:%S',
+ '%d/%m/%y %H:%M',
+)
+DECIMAL_SEPARATOR = ','
+THOUSAND_SEPARATOR = '.'
+NUMBER_GROUPING = 3
+
No changes.
@@ -0,0 +1,18 @@
+# -*- encoding: utf-8 -*-
+# This file is distributed under the same license as the Django package.
+#
+
+# DATE_FORMAT =
+# TIME_FORMAT =
+# DATETIME_FORMAT =
+# YEAR_MONTH_FORMAT =
+# MONTH_DAY_FORMAT =
+# SHORT_DATE_FORMAT =
+# SHORT_DATETIME_FORMAT =
+# FIRST_DAY_OF_WEEK =
+# DATE_INPUT_FORMATS =
+# TIME_INPUT_FORMATS =
+# DATETIME_INPUT_FORMATS =
+# DECIMAL_SEPARATOR =
+# THOUSAND_SEPARATOR =
+# NUMBER_GROUPING =
No changes.
Oops, something went wrong. Retry.

0 comments on commit 9233d04

Please sign in to comment.