动态表单应该如何设计数据库?
需求是这样的
- 在后台管理界面录入表单信息,规定有哪些表单
(可以增删)
- 在前端显示哪些表单的可以填写
- 最后把填写的表单(
产生的真实数据
)存入数据库 - 最后填入的数据需要能够方便
查询,排序,过滤
的数据
我在网上找了挺多资料都不太符合我的需求,有没有设计大神提供一下设计的思路!!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
支持mongodb存储,像商品属性这些 各种颜色 各种尺寸的 用mongodb存储相当愉快另,不是所有查询逻辑都写在SQL端才行,有一些逻辑提取出来写在代码层你会发现性能提升不少,可以少了不少join操作。
最好把数据存储到mongo 如果存储关系数据库那就是个大坑,另外一定要存储一份汇总数据,然后在单独把表单数据存储一份,比如我新建了10个表单那么就存储10个集合
补充一下关于查询这块。基本思路和一楼一致。但是数据的筛选查询确实是一个问题 这样的话可以考虑加一个专门负责检索的表
id 主键自增 search_id 是数据id filed_id 是 字段 的id data 就是数据值了
当前台添加完这条数据的时候 在执行回调把 相关数据 插进这个表里 负责搜索就好了 这个表该加索引就加索引 应该够用了
1、先定义一张控件表,如单行文本,多行文本,单选,多选,时间等
2、再定义一张配置表,用来定义一个Form有哪些字段,以及字段名字(用来显示,如姓名,性别),控件类型,字段默认值,字段长度,是否必填等信息
3、然后在后台把对应配置表添加的记录存到另一张记录表,记录表里存放的可能有多个单行文本,多个单选等记录(多余)
4、接着根据记录表的信息显示Form。
5、最后填写完Form提交的时候,再把填写的资料保存起来就可以了。
6、当需要显示填写的资料的时候,根据配置表和Form对应的记录,把相应的资料显示在对应的控件中