Flask WTForms - Можно ли использовать параметр шага для разрешения установки секунд в TimeField? - PullRequest
0 голосов
/ 11 марта 2020

Я только что обнаружил существование wtforms.fields.html5 с TimeField, DateField et c. inside.

Обычно в HTML можно написать следующее

<input type="time" step="1"/>

, чтобы отобразить поле для установки времени.

Поскольку я генерирую форму (с различные <input/> поля, включая одно на время) в Python Я изо всех сил пытаюсь найти способ установить параметр step.

Я попытался добавить дополнительный аргумент в конструктор под названием step просто чтобы проверить, существует ли он. Не работал, не существует.

Кроме того, я попытался установить формат:

task_clock_due = TimeField('Time due',
                           validators=[validators.InputRequired()],
                           format='%H:%M:%S'
                           )

Поскольку формат включает часы, минуты и секунды, я фактически ожидал, что поле времени получить часть секунды тоже. Видимо, это не работает так. Я по-прежнему получал бы секунды, когда я отправляю значение, но оно всегда 00, и пользователь не имеет возможности фактически взаимодействовать с секундами.

Я пошел так же глубоко, как и проверял исходный код указанного c виджет но ничего не вышло.

1 Ответ

0 голосов
/ 11 марта 2020

Я понял. По-видимому, существует аргумент render_kw, который также можно использовать, например, в TextField для установки заполнителя на значение c.

Решение:

task_clock_due = TimeField('Time due',
                           validators=[validators.InputRequired()],
                           format='%H:%M:%S',
                           render_kw={"step": "1"}
                           )
...