同步操作将从 YuZhanglong/EasyQuestionnaire-web 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
服务端还是采用mongodb这个nosql数据库(其实说它是个关系型数据库也不为过~),当然,mysql当然也是一个不错的选择,各有各的好处。
问卷提交的过程处理:
数据处理: 如果使用mongodb(例如本项目),数据的插入是非常方便的,但是如果严谨些,需要考虑数据格式验证的问题,如果使用mysql,结合json格式的字段,那么处理起来也不会太难。
数据统计: 当前本项目的数据统计是直接通过调取接口 -- 查表 -- 进行计算的,个人用用的小项目还可以,但是如果数据量一大(例如某个问卷的问题很多),那么就会出现大量查表计算的情况,这个可能比较耗时,我们可以:
采用redis缓存,每次用户填写完表单,服务端返回给用户200之后,后台重新计算表单统计信息,同步存入redis和db,这样问卷发布者调取数据分析接口之后只需要从redis获取统计数据即可,速度非常快
另外, 我们可以不用redis,而是另建立一张数据统计表来处理上述问题吗?具体思路是每次用户完成提交后,后台更新数据统计表的信息,这样就不用查多个表进行大量计算,只需要查数据统计表就可以了 。这可能不是一个好的选择 ,因为我们需要保证数据一致性,试想:问卷发布者删除/修改一个题目/选项顺序,那么这张数据统计表就必须更新了,此时再来更新数据统计表就会出现麻烦了。
├─ .gitignore
├─ README.md
├─ babel.config.js
├─ public
│ └─ index.html
├─ src
│ ├─ assets
│ ├─ components
│ │ ├─ bScroll
│ │ │ └─ bScroll.vue
│ │ ├─ dataCard
│ │ │ ├─ dataCard.vue
│ │ │ └─ puleDataCard.vue
│ │ ├─ leftNavBar
│ │ │ └─ leftNavBar.vue
│ │ ├─ myCharts
│ │ │ ├─ chinaMap.vue
│ │ │ └─ pieChart.vue
│ │ ├─ navBar
│ │ │ └─ navBar.vue
│ │ ├─ scrollBar
│ │ │ └─ scrollBar.vue
│ │ └─ stepBar
│ │ └─ stepBar.vue
│ ├─ network
│ │ ├─ analysis.js
│ │ ├─ complete.js
│ │ ├─ questionnaire.js
│ │ ├─ questionnaireEdition.js
│ │ ├─ user.js
│ │ └─ request.js
│ ├─ router
│ │ └─ index.js
│ ├─ utils
│ │ ├─ loading.js
│ │ └─ messageBox.js
│ ├─ views
│ │ ├─ analysis
│ │ │ ├─ ChlidComp
│ │ │ │ ├─ chartBackground.vue
│ │ │ │ └─ globalChartBackground.vue
│ │ │ └─ analysis.vue
│ │ ├─ complete
│ │ │ ├─ childComp
│ │ │ │ └─ secretInput.vue
│ │ │ └─ complete.vue
│ │ ├─ create
│ │ │ ├─ childComp
│ │ │ │ ├─ popOver.vue
│ │ │ │ ├─ problemTypeItem.vue
│ │ │ │ ├─ problemCard.vue
│ │ │ │ └─ basicInfo.vue
│ │ │ └─ questionnaire.vue
│ │ ├─ home
│ │ │ └─ home.vue
│ │ ├─ login
│ │ │ └─ login.vue
│ │ ├─ manage
│ │ │ ├─ childComp
│ │ │ │ └─ templateList.vue
│ │ │ └─ manage.vue
│ │ ├─ register
│ │ │ └─ register.vue
│ │ ├─ spread
│ │ │ ├─ childComp
│ │ │ │ ├─ npsSelector.vue
│ │ │ │ └─ projectShare.vue
│ │ │ └─ spread.vue
│ │ └─ success
│ │ └─ success.vue
│ ├─ main.js
│ ├─ App.vue
│ └─ models
│ ├─ response_model.js
│ ├─ questionnaire_model.js
│ └─ analysis_model.js
├─ vue.config.js
├─ node_modules
├─ questionnaire.conf
├─ package.json
└─ package-lock.json
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。