15
class Form(Form):
      plan_start = DateField('Plan Start', validators=[Required()]) 

このコードは、この html をレンダリングします。

<input id="plan_start" name="plan_start" type="text" value="">

私の質問は、なぜ型が istextでなくないのdateですか?

type='date'これを解決するには、 in テンプレートを明示的に渡す必要があります。

 {% raw form.plan_start.label %}{% raw form.plan_start(type='date') %}
4

3 に答える 3

30

html5 の DateField を使用できます。

from wtforms.fields.html5 import DateField


class Form(Form):
    plan_start = DateField('Plan Start', validators=[Required()])
于 2013-11-03T23:48:44.523 に答える
0

カスタム ウィジェットの作成を試みます。

from django.forms import widgets

class CustomDateInput(widgets.TextInput):
    input_type = 'date'

class Form(Form):
    plan_start = DateField('Plan Start', validators=[Required()], widget=CustomDateInput) 
于 2013-10-25T13:03:03.260 に答える
0

type を text ではなく date として取得するには、以下のように format オプションも渡す必要があります

password = DateField('Your Date of Birth', validators=[DataRequired()], format='%Y-%m-%d')
于 2019-06-13T12:24:02.923 に答える