Python NDB重复结构属性与WTF FIELDLIT有关的问题

Python NDB重复结构属性与WTF FIELDLIT有关的问题,python,google-cloud-datastore,app-engine-ndb,wtforms,Python,Google Cloud Datastore,App Engine Ndb,Wtforms,我一直在使用ferris框架,在为模型生成表单时遇到了一些问题。Ferris提供WTForms在html页面上呈现NDB模型的字段 我有一个ndb模型,其中包含一个结构化属性,类似于: class Program(BasicModel): name = ndb.StringProperty(required=True) description = ndb.StringProperty(required=True) duration = ndb.StringProperty

我一直在使用ferris框架,在为模型生成表单时遇到了一些问题。Ferris提供WTForms在html页面上呈现NDB模型的字段

我有一个ndb模型,其中包含一个结构化属性,类似于:

class Program(BasicModel):
    name = ndb.StringProperty(required=True)
    description = ndb.StringProperty(required=True)
    duration = ndb.StringProperty(required=True)
    contacts = ndb.StructuredProperty(Contact, repeated=True)

class Contact(BasicModel):
    first_name = ndb.StringProperty(required=True)
    last_name = ndb.StringProperty()
    picture_url = ndb.StringProperty()
    email =  ndb.StringProperty()
由于contact的结构化属性是重复的,所以我可以有很多,为了处理这个问题,我为表单创建了一个类,并将contacts字段设置为FieldList:

class ProgramForm(model_form(Program)):
    contacts = fields.FieldList(fields.FormField( model_form(Contact) ), min_entries=1)
这会在html页面上呈现我需要的字段,但在发布表单时,值总是为空。如果我为联系人附加第二组字段,则第二组确实会发送值,但第一组仍然为空

我不知道这是否是处理重复结构属性的正确方法,或者我缺少了什么


提前感谢您的帮助

我遇到了同样的问题。你能解决它吗?丹尼尔和@Chris,你能解决这个问题吗?