2017-02-20 33 views
0

Значение по умолчанию для ввода формы должно быть текущим временем. Пользователь должен выбрать, чтобы обеспечить время в будущем, и должно отображаться нормальное поле datetime. Можно ли это реализовать без javascript и как?Ввод даты и времени для текущего или будущего времени

+1

Вы имеете в виду, даты в прошлом не должны отображаться в календаре? –

+0

Что происходит иначе ?. Я думаю о django validators и функции 'function()' python, возможно, если вы добавите более подробную информацию к своему вопросу, тогда мы сможем дать вам лучший ответ. – chachan

+0

Это то, что вы ищете? http://stackoverflow.com/questions/4941974/django-how-to-set-datefield-to-only-accept-today-future-dates – themanatuf

ответ

0

Вы можете оставить вход пустым и изменить его на текущее время на бэкэнд (или, возможно, установить его на текущее время в момент создания шаблона и интерпретировать прошлое как «сейчас»). Но больше всего вы можете обойтись без JavaScript, добавляя комментарий, который пустой ввод означает текущее время. Если вы хотите сделать какой-то фэнтезийный флажок для текущего времени и, возможно, скрыть ввод данных datetime, вы должны сделать это с помощью JavaScript.

0

Вы можете попробовать <input name="date_input" type="date" id="date_input"> в вашем шаблоне.

И делать вид делать:

from datetime import datetime 
# get a string from a POST like "10/2/2018" 
date_get = request.POST.get("date_input") 

# format of date/time strings; assuming dd/mm/yyyy 
date_format = "%d/%m/%Y" 

# create datetime objects from the strings 
date = datetime.strptime(date_get, date_format) 

# Check if we have a datetime 
print(date) 
datetime.datetime(2018, 2, 10, 0, 0)