主题:请教beetl的高级用法,如何在一个页面绑定多个modle,或者如何绑定复杂的数据模型?

18627862796 2019年03月05日 57

最近刚开始接触beetl,已经通读过官方文档,暂没发现解决办法。

需求如下:项目中需要用到复杂页面,一个页面动态输出多个form并动态绑定多个数据模型。

后台数据模型结构如下:

obj = {

属性1:''

属性2:''

....

map:{

obj1:{

属性1:'' ,

属性2:'' ,

map:{

obj1:{ ... },

obj2:{ ... },

....

}

},

...........

}

}


前端需要通过遍历map,在页面上动态绑定多个form。

我在遍历map的时候,动态输出了多个form的标签,即<#form:form>。

通过阅读文档和自己的试验,发现,form的HTML标签可以动态输出,但是每个form都是绑定的同一个数据模型。

请问:如何实现在一个页面上动态绑定多个数据模型,并且分别提交?

18627862796 2019年03月05日

我在想,能否继承并重写数据模型解析的方法,让其能识别map,实现这样一个功能,getTestInfoJson.get(itemCode),而不是getTestInfoJson[itemCode],不知道这个思路对不对。

闲大赋 2019年03月05日

看错误提示,你应该携程

<#form input="${testInfo[code]}"

这样才能取值啊

  • 18627862796 :这里是我写的有问题,换成${testJson[code]}这种写法我也试过,也有问题。(2019年03月05日)
  • 18627862796 :我知道问题在哪里了,invoke方法里面没有对Map和List等集合的支持,只能支持简单对象属性(2019年03月05日)
  • 闲大赋 :不懂?或者你提一个需求(2019年03月06日)