#django #forms
#django #формы
Вопрос:
Я пытаюсь использовать ввод type = time
в Django. Но каждый раз, когда мой type = text
. Я пробовал это:
field_name = forms.TimeField()
<!--return-->
<input type="text" name="field_name" required id="id_field_name">
это:
time_st = forms.TimeField(widget=forms.TimeInput(format='%H:%M'))
<!--return-->
<input type="text" name="time_st" value="" required id="id_time_st">
Как получить такой эффект:
<input type="time" id="appt" name="appt" class="form-control" required>
Ответ №1:
Прошу прощения, если это не тот ответ, который вы ищете, я пытался расшифровать ваш вопрос.
Итак, у вас есть форма, которая выглядит примерно так:
class MyForm(forms.Form):
time = forms.TimeField()
Это ваша базовая форма django, в которой есть поле с именем time .
В вашем представлении django вам понадобится что-то вроде следующего, которое проанализирует форму, сделав ее «пригодной для использования».
def form_handler(request):
if request.method == 'POST':
form = MyForm(request.POST)
if form.is_valid():
print(form.valid_data['time'])
return redirect('valid_time_url_redirect')
return ... # failure of validation see form.errors
form = MyForm()
return render('django_template.html', {'form': form})
Вероятно, это недопустимый код, но, надеюсь, он укажет вам правильное направление относительно того, что вам нужно делать.
- Как в моделях, так и в классах form есть поля TimeField и DateTimeField. Убедитесь, что вы используете правильное поле для вашего использования. Также убедитесь, что вы взглянули на ожидаемые входные данные для каждого поля. Посмотрите на time_input_formats, это обычная ошибка для использования этих полей.