开源的CMS如何实现问卷调研?

 

投票、报名等一般微信内有很多这样的工具,但是比如正式学术会议报名、学校内部学生报名、问卷调研等系统,一般会通过网站提交表单来实现。

那么到底如何通过开源的CMS来构建一个问卷调查呢?本文就通过如何用开源的解决方案,架构出一个类似问卷星的平台。

能做CMS的问卷调查很多,我们把常见的不同CMS做了对比,比如Wordpress、Shopify、Drupal都有问卷表单,Wordpress里面的wpforms就很强大,Drupal里面的webform也很强大。

我们今天讲一下Drupal里面的WebForm功能。

 

调研问卷的数据结构设计

 

调研问卷的核心表有两个:一个是问卷结构表,另一个是问卷数据提交表。

结构表:id、结构。结构用JSON或者xml等序列化的方式,存储表的结构、表的结构逻辑等信息。

数据表,提交的表ID、字段ID、字段值。

这样,用户提交过来的数据,每一个字段的值都是一行,比如一个表10个字段,就会存储10条数据,这样虽然数据量较大,但是好处是用户的数据都是单独存储在数据库的,可以生成导出脚本以及做数据分析。

可以参考下面的数据结构图: 

 

 

Drupal的WebForm介绍

 

Drupal有一个神器叫WebForm,可以创建各种各样的表单(Form),支持多种类型的字段,比如文字、生日、电话、下拉列表等等,还支持条件,比如当选择男/女的时候,分别显示出不同的结果,因此功能相当强大。

不过Webform本身也是结构也是符合之前说的标准,一个结构表一个数据表,这样也比较好管理和扩展。

如下图,可以通过添加元素,直接创建一个表单,这个表单有名字、Email、主题和留言。

 

表单创建,直接可以添加元素

 

多步表单,表单有下一步功能

 

 

要美丽、要美丽、要美丽

 

看见上面的界面,是不是操作的欲望会少一半? 人靠衣装,现在的应用还是要把UI和用户体验提上去,所以,我们基于Drupal的Webform和API,开发了一个类似问卷星的工具,后台可视化操作,所见即所得,保存即可输出一个H5的表单页面,并且是多账户的,也就是每一个用户可以创建自己的表单,跟其他人分开。

提交的数据也是能随时查看,并且可以导出Excel,高级功能还有提交后通知功能,比如有一个报名功能,一旦有人提交,就给你发短信,这样就能第一时间处理,所以管理比较方便。

 

表单构建界面

 

 

表单通知设置

 

 

表单的手机端展示界面

 

 

最后说明一下,表单系统也可以作为考试来用,加上分数计算,就可以直接得到分数了,因此表单也是在线教育平台的一个重要功能。

 

关于表单功能、在线教育、以及CMS,可以点击查看相关产品和之前的文章:

1. 如何通过开源方案自建视频课程平台

2. 在线视频教育学习平台介绍

3. CMS如何实现在线打卡/在线签到/上课签到功能

4. 基于CMS的图库管理系统

5. 基于Drupal的在线教育网站案例

6. 如何基于开源系统构建资料库/文档库平台