一.动态表单背景
在企业级开发中,我们会根据业务情况设计表单,每个业务表单建一张物理表,随着后期业务需求变更,导致物理表不断膨胀,如果项目已上线,修改物理表后,可能造成程序问题。
场景一: 最初工作流软件表单功能相对比较落后,每一个表单制作都要代码去写,但这种方式不能满足企业变化的需求。
场景二: OA系统,基本上采用表单+流程就可以实现,然而大量的表单和表单的易变动性,对于开发人员维护时非常痛苦的。比如:许多公文在多部门直接传递审批,不同的公文有不同的要求,内容与格式,这时候就适合使用动态表单。
场景三: 简单企业网站,用内容管理系统cms建设,有点资源浪费。
目的:动态表单,可以灵活配置并扩展业务、避免在系统中硬编码的数据采集及处理表单,提高系统的可维护性。动态表单,使开发人员把注意力集中在业务流程上,同时,也可以让系统操作人员参与表单的管理。
二.动态表单定义
动态表单分为两部分:一部分动态表单的定义和显示,另一部分动态表单内容的接收和存储
本质:相当于一个数据库
三.动态表单设计思路
1.利用横向表纵向存储的思路,即一张表保存表单的定义信息(分组),一张表保存表单的字段配置信息(分组字段),这样做可以灵活扩展表单(后期如果添加一个字段,只需要往表里插入一条数据即可)。
2.利用mongodb数据库对表单数据内容存储。(不足之处,数据统计功能弱)