如何为 form-generator 及其记录创建数据库表?

How to create database tables for a form-generator and its record?

我正在开发 form-generator,但是,我在尝试为其创建数据库时感到困惑。

需求分为后端/前端,

对于后端,管理员可以管理表单

前端:可以存储表单值

问题是:

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?

https://softwareengineering.stackexchange.com/questions/204097/dynamic-form-builder-forms-and-database-design

美好的一天!!