Python 如何在jinja2模板中显示日期\时间字段?(烧瓶)

Python 如何在jinja2模板中显示日期\时间字段?(烧瓶),python,google-app-engine,flask,jinja2,Python,Google App Engine,Flask,Jinja2,我有一个包含这两个值的表单(ndb是Google应用程序引擎): 型号: class Appointment(model.Base): start_time = ndb.DateTimeProperty(required=True) end_time = ndb.DateTimeProperty(required=True) 表格(使用wtforms): 在jinja2模板中,我有: {{forms.date_field(form.start_time, format='%

我有一个包含这两个值的表单(ndb是Google应用程序引擎):

型号:

class Appointment(model.Base):
    start_time = ndb.DateTimeProperty(required=True)
    end_time = ndb.DateTimeProperty(required=True)
表格(使用wtforms):

在jinja2模板中,我有:

  {{forms.date_field(form.start_time, format='%Y-%m-%d %H:%M:%S')}}
  {{forms.date_field(form.end_time)}}

我想将表单输入显示为时间小部件,但它看起来像一个日期字段。我认为wtforms有一个日期时间字段,但是我如何实现它呢?

如果你想显示一个日期时间小部件,你需要创建一个自定义小部件。定义表单时 使用您自己的小部件传递该小部件

对于小部件,请看以下示例:

然后像这样定义表单:

class AppointmentUpdateForm(wtf.Form):
    start_time = wtforms.DateField('Start at', [wtforms.validators.required()], widget=DatePickerWidget())
    end_time = wtforms.DateField('End at', [wtforms.validators.required()], widget=DatePickerWidget())

请记住,这是使用引导日期时间选择器,因此您必须包含CSS和js。

您的意思是wtforms.DateTimeField不符合您的要求吗?我想在模板中正确显示和呈现它可能我不清楚。表单类使用的是DateField,而不是DateTimeField。
class AppointmentUpdateForm(wtf.Form):
    start_time = wtforms.DateField('Start at', [wtforms.validators.required()], widget=DatePickerWidget())
    end_time = wtforms.DateField('End at', [wtforms.validators.required()], widget=DatePickerWidget())