我正在一个项目中工作,我有以下场景。
我想在运行时创建表格。见下图
我想要一个控件,例如用户可以拖放的地方,提供行数和列数,行和列的标签并将其保存在 mysql 数据库中。
稍后其他用户将从数据库中获取此表并填充不同的列值。
问题:
这个动态数据网格的数据库模式是什么?
是否有任何 jQuery 插件来创建这样的可编辑网格?
Moshe Shaham
正如您在回答中的评论中提到的那样: “实际上,我正在为调查创建一个模板系统”。然后:
制作一个数据库表来保存Survey
数据。
servey_id
,title
等。
制作一个数据库表来保存Question
数据,链接到survey_id
.
question_id
, survey_id
, title
, type
,order
制作数据库表以保存Answer
数据,链接到question_id
.
布尔值:answer_id
, question_id
,value/tinyint(1)
数字:answer_id
, question_id
,value/int(11)
文字:answer_id
, question_id
,value/varchar(255)
如您所见,您需要多个表格Answers
,因为通常您期望某些问题的数据不同。
稍后您可以即时查询并制作表格。
我想这是制作这种结构的最常见方法。
关于这jQuery
部分,您可以即时制作表格,然后使用任何种类的库或 jQuery 插件进行排序、格式化、样式等。
我认为最直接的解决方案是在数据库中为用户创建的每个新表创建一个新表。除非我们谈论的是大量表,否则我认为它简单易用,因为您可以让用户选择列的数据类型。在一个巨大的通用表中做所有的自定义表可能会变成一团糟......