2015-06-30 1 views
1

моего models.py:Как заставить пользователя вводить поле даты в формате DD-MM-YYYY и поле времени в формате «HH: MM» в django?

class Attendancename(models.Model): 
    teacher_name = models.ForeignKey(Teachername) 
    date = models.DateField('Date') 
    intime = models.TimeField('IN-TIME') 
    outtime = models.TimeField('OUT-TIME') 

моего forms.py:

class AttendancenameForm(ModelForm): 
    teacher_name = forms.ModelChoiceType(queryset=Teachername.objects.all()) 
    date = /*** What should I write to enforce 'DD-MM-YYY'?***/ 
    intime = /*** to enforce 'HH:MM' format?***/ 

Просьба представить мне предложения, чтобы сделать это в таком формате в противном случае, он должен поднять хулу введенного ввода. Как я могу реализовать его в форматах django?

Я также хочу рассчитать общее количество часов в зависимости от времени и времени работы, как я могу реализовать его в файле views.py?

ответ

2

django.froms.DateField и django.forms.TimeField оба имеют входной параметр с именем input_formats, который представляет собой список форматов ввода даты и времени соответственно. Они определяют, какие шаблоны должны быть предприняты при анализе ввода пользователя.

date = DateField(input_formats=['%d-%m-%Y']) 
intime = TimeField(input_formats=['%H:%M']) 

Для получения более подробной информации см. https://docs.djangoproject.com/en/1.8/ref/forms/fields/#.

+0

Я пытался использовать 'input_formats' в моем файле django forms.py, но когда я отправляю значения в своей форме, он подсказывает мне - «Введите действительную дату». Но я отправляю действительную дату в соответствии с указанным мной форматом. Я не знаю, в чем проблема. Пожалуйста, предложите мне, как я могу это исправить? –

+0

Это подсказка от Javascript? Используете ли вы виджет Django для визуализации формы? Я предполагаю, что виджет использует settings.DATE_INPUT_FORMATS (https://docs.djangoproject.com/en/1.8/ref/settings/#date-input-formats), попробуйте установить его соответствующим образом, то же самое для settings.TIME_INPUT_FORMATS. Я предполагаю, что при изменении этих параметров экземпляры полей формы тоже используют это, и вам больше не нужно будет указывать параметры 'input_formats'. Но я не проверял это. – Bernhard

Смежные вопросы