如何为 form-generator 及其记录创建数据库表?
How to create database tables for a form-generator and its record?
我正在开发 form-generator,但是,我在尝试为其创建数据库时感到困惑。
需求分为后端/前端,
对于后端,管理员可以管理表单
- 具体表格名称
- 管理表单输入(只允许输入框,select框,复选框)
- 输入标题
- 是必需的吗?
- 如果select框:
- 选项名称,值
- *是在我输入select值的时候弹出其他input?
- 如果输入框:
- 是数字/字符串类型吗?
前端:可以存储表单值
问题是:
1) 对于*,比如用户select选项A,那么选项C是可见的,否则是隐藏的,如何存储关系?
2) 如何以这种形式存储值?如果我输入一个 table / 值可能是 varchar / float / integer / tinyint
感谢您的帮助
问题 #1 的可能建议:
您可以从后端发送映射(即 selection -> input_filed)。然后在从后端接收到映射后,您可以进行条件表单输入)。
假设,你从后端发送这个:
IF I select 将出现输入字段 F1。
如果我selectB输入框F2会出现
要实现这一点,您当然必须在数据库中的一个 table 中拥有此映射。那么剩下的就交给前端了。
问题 #2 的可能建议:
方法一:
You may keep a table where it will act like a super class. That means
all the possible types (varchar / float / integer / tinyint) should
exist in your table.
缺点 : 浪费 space 因为对于此 table 中的每个条目,只有一个字段将被填充,其他将被填充留空。
方法二:
您不应将 MYSQL 用于此目的。您可以使用任何 NoSQL 数据库。
请看看这个post。通过这个。我相信你会明白的。
dynamic columns and data type in mysql
方法三:
有很多方法。
这些链接可能会有所帮助。
How to design a database for User Defined Fields?
美好的一天!!
我正在开发 form-generator,但是,我在尝试为其创建数据库时感到困惑。
需求分为后端/前端,
对于后端,管理员可以管理表单
- 具体表格名称
- 管理表单输入(只允许输入框,select框,复选框)
- 输入标题
- 是必需的吗?
- 如果select框:
- 选项名称,值
- *是在我输入select值的时候弹出其他input?
- 如果输入框:
- 是数字/字符串类型吗?
前端:可以存储表单值
问题是:
1) 对于*,比如用户select选项A,那么选项C是可见的,否则是隐藏的,如何存储关系?
2) 如何以这种形式存储值?如果我输入一个 table / 值可能是 varchar / float / integer / tinyint
感谢您的帮助
问题 #1 的可能建议:
您可以从后端发送映射(即 selection -> input_filed)。然后在从后端接收到映射后,您可以进行条件表单输入)。
假设,你从后端发送这个:
IF I select 将出现输入字段 F1。
如果我selectB输入框F2会出现
要实现这一点,您当然必须在数据库中的一个 table 中拥有此映射。那么剩下的就交给前端了。
问题 #2 的可能建议:
方法一:
You may keep a table where it will act like a super class. That means all the possible types (varchar / float / integer / tinyint) should exist in your table.
缺点 : 浪费 space 因为对于此 table 中的每个条目,只有一个字段将被填充,其他将被填充留空。
方法二:
您不应将 MYSQL 用于此目的。您可以使用任何 NoSQL 数据库。 请看看这个post。通过这个。我相信你会明白的。 dynamic columns and data type in mysql
方法三: 有很多方法。 这些链接可能会有所帮助。
How to design a database for User Defined Fields?
美好的一天!!