0

我很好奇FieldListwtforms 是如何工作的,我使用 javascript 对前端进行了一些实验。

所以基本上我有多个可重复的字段,并且有一个按钮可以动态添加新字段并更改其id, namefor遵循 wtforms 约定(例如transaction-item-0-something,对于第一个字段,transaction-item-1-something对于第二个字段等)。

我所做的一项实验是对字段列表中的 2 个字段(例如,对于第一个字段,对于第二个字段)进行相同id和相同的设置。并且 wtforms 只取第一个输入值(预期)。nametransaction-item-0-somethingtransaction-item-0-something

第二个实验让我感到困扰,我故意更改了一些数字,以便它会跳过一些数字(transaction-item-0-something对于第一个字段,transaction-item-2-something对于第二个字段),它工作正常,wtforms 收到了两个输入。

所以这让我想知道,不需要id订购name吗?如果是这样,那么 wtforms 如何处理接收到的输入,是否只是获取包含的项目的所有 id transaction-item-x-something?并且只是循环通过它但还要检查注册的ID是否在那里?

4

1 回答 1

0

其实我只是翻了一下源码发现顺序无所谓,只要是数字(值将被删除。.isdigit()setkeysdictionary

这意味着 html 将发送每一个<input>,不管它id是否name相同,并让后端处理它

于 2016-03-01T12:25:48.297 回答