我正在使用 WTForm 验证我直接从 javascript 模型提交的表单(通过敲除填充)。在我的表格中,我有一个可以动态添加/删除的银行账户列表。在 python 方面,我有这样的东西:
class Account(Form):
acc_name = TextField('Account', [validators.Length(min=2, max=35)])
class InformationForm(Form):
account_list = FieldList(FormField(Account))
接收到的用于验证的 json 数据如下:
'account_list': [{'acc_name': 'aaaaa'}, {'acc_name': 'b'}]}
问题是当我验证我收到这样的东西时,无法知道列表中的哪个帐户是错误的来源:
'account_list': [{'acc_name': [u'Field must be between 2 and 35 characters long.']}
如何将错误链接到正确的帐户?
编辑:我最终的做法是在我的 InformationForm 类中添加了一个 getErrors 方法,该方法为每个 Account 构建了一个由唯一 Id 索引的字典,其中值是每个 Account 错误。然后我将它作为 json 返回到我的应用程序。如果有一个“自然”的解决方案,我会保持这个问题......