我会试着解释一下我的问题,看看能不能得到一些帮助。
我正在试着设计一个数据库。这个数据库将包含用户和表单,但我的问题是如何设计它来保存表单。
这些表单将由管理员在他需要它们时创建,因此在数据库中我有一个表来保存表单名称。另一个表包含所有表单的所有可能字段,另一个表将保存表单名称和字段,这样我就可以看到已确定表单的所有字段。
例如:在FormName表中,我有3个表单名称:个人信息、计算机知识和爱好。在Fields表中,我有,例如,姓名,地址,电话,操作系统,编程,骑自行车,玩电脑游戏。
我决定创建一个具有姓名编号1(个人信息)和字段编号1、2、3(姓名、地址、电话)的表单。此信息记录在另一个名为full-form的表中,其中保存了表单名称id和字段id。这对我来说很清楚(也许我错了)。
现在,棘手的部分来了。一些用户决定填写个人信息表单,因此表单的名称和每个字段都必须显示。当用户填写表单时,它必须以某种方式保存,以便管理员可以看到表单的名称、该表单的每个字段、谁填写了该表单以及每个字段中写入的信息。所有这一切不仅应该在数据库中显示,而且应该以某种不同的方式显示,例如,表格。
顺便说一下..。我使用的是cakephp和mysql。
提前谢谢你,
亚伯拉罕
发布于 2013-05-28 16:32:55
据我所知,设置是这样的。如你所说,我们有3张表:
‘'formname’= id,名称(用于表单名称)‘formfield’= id,fieldname,attributes (用于表单名称,在需要时添加属性) ' forms‘= id,formname_id,formfields_id,formfields_order (准备好的表单和在表单中排序字段的可能性)
您还应该创建额外的表来存储提交的值'forms_values‘= id,forms_id,value (在本例中,每个字段占一行)
如果要将这些值与特定用户相关联,则应该再创建一个表'users_forms‘= forms_values_id,user_id
当然,还应该有users表。
我的建议是去掉‘form name’表,把form name放到'forms‘表中。则表'forms‘将包含id、form_name、formfields_id、formfields_order
希望这个答案能让你有所收获:)
https://stackoverflow.com/questions/16786904
复制相似问题