#28090: TimeField's value incorrectly localized in forms
---------------------------+-------------------------------------
Reporter: Tomek Rej | Owner: nobody
Type: Bug | Status: closed
Component: Forms | Version: 1.11
Severity: Normal | Resolution: duplicate
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
---------------------------+-------------------------------------
Changes (by Tim Graham):
* status: new => closed
* component: Uncategorized => Forms
* resolution: => duplicate
* stage: Unreviewed => Accepted
Old description:
> When passing a datetime.Time instance to the choices parameter in a
> TimeField, the admin template converts it to a human readable form. Eg
> Time(0, 0) gets converted to "midnight", Time(1, 30) gets converted to
> 1:30 a.m. In Django 1.10 it gets formatted as 00:00:00 and 01:30:00
> respectively.
>
> An example of the choices I pass in to the constructor is:
>
> {{{
> [
> (datetime.Time(0, 0), '00:00'),
> (datetime.Time(0, 30), '00:30'),
> (datetime.Time(1, 0), '01:00'),
> ....,
> (datetime.Time(23, 30), '23:30')
> ]
> }}}
>
> This causes the admin form validation to fail with errors like the
> following:
> ''Select a valid choice. midnight is not one of the available choices.''
New description:
When passing a `datetime.time` instance to the choices parameter in a
`TimeField`, the admin template converts it to a human readable form. For
example, `time(0, 0)` is converted to "midnight", `time(1, 30)` is
converted to 1:30 a.m. In Django 1.10, it gets formatted as 00:00:00 and
01:30:00 respectively.
An example of the choices I pass in to the constructor is:
{{{
[
(datetime.time(0, 0), '00:00'),
(datetime.time(0, 30), '00:30'),
(datetime.time(1, 0), '01:00'),
....,
(datetime.time(23, 30), '23:30')
]
}}}
This causes the admin form validation to fail with errors like the
following:
''Select a valid choice. midnight is not one of the available choices.''
--
Comment:
Bisected to 6d8979f4c2fbfb9fd5db92acd72489cbbcbdd5d1. It happens in forms
outside the admin also. I think it's a duplicate of #28075 -- the
`<select>` `value` is inadvertently localized just like in that ticket.
--
Ticket URL: <https://code.djangoproject.com/ticket/28090#comment:2>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/067.51940e01074309c8c3a2fd622ded4886%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.