我正在与Activiti一起评估Play 2(Scala)。我试图陷入困境
渲染Activiti表格。 Activiti使用List<FormProperty>
来声明表单的结构。每
FormProperty代表一个字段,定义其名称,值,类型等。
如何通过循环遍历这些属性列表来生成Play 2表单?
我已阅读ScalaForms文档,但所有示例均假设表单字段为 在编译时已知。
在Pseudo-Scala中,我需要类似的东西:
val dynamicForm: Form[DynamicFormData] = Form(
mapping(
// This obviously doesn't work, but just to illustrate the idea...
for (p <- activitiFormProperties) {
p.getName -> resolveToPlayMapping(p.getType)
}
)(DynamicFormData.apply)(DynamicFormData.unapply)
)
其中DyncamicFormData
是由地图数据结构支持的非案例类。
request.body.asFormUrlEncoded
来访问POST上的数据,但我对使用{{{我}特别感兴趣1}}类及其所有验证,错误处理,视图助手基础结构。