Skip to content

Chloe-Y/Survey

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

使用 Django 驱动

功能:

  • 后台添加问卷类型,问卷说明,问卷问题等
  • 问题回答类型有:文本,段落,单选,多选,下拉选择,范围等六种
  • 用户回答完问卷之后,可随机一份相同问卷的他人回答(如果有的话)
  • 添加单选多选之外还有自定义回答的问题类型
  • 新增问卷添加页面(目前是后台添加页面)
  • 根据问卷回答,给每个问卷增加分析(numpy, pandas, matplotlib, 如果样本足够)

逻辑:

  1. index 页面展示所有的问卷
  2. 由首页进入问卷详情页面
  3. 问卷页面有问卷介绍,后续跟着问卷下所属的问题和输入框
  4. 输入回答之后提交, 这里会默认新建 test 用户绑定回答集
  5. 提交回答之后会跳转到输入用户信息的页面,输入的用户信息(用户名,留言)会更新掉之前默认的 test 用户名 (用 user.pk 传递参数)
  6. 提交了用户信息之后跳转到此用户的问卷回答页面,可以分享链接给朋友查看,后续打算更新将回答保存为 txt, png, pdf 的功能(待续)
  7. 用户问卷页面下面还有会一个按钮,用来随机展示一个同问卷的其他用户的回答
  8. 后续样本足够,打算就不同的问卷做一些有趣的分析和图表展示等 (numpy, pandas, matplotlib)

模型:

  • Category:问卷类别
    • name: 类型名
  • Survey:问卷
    • name: 问卷名
    • slug: 问卷slug (用来展示在url中,用26个英文字母和‘-’)
    • description: 问卷说明介绍
    • category: 问卷所属的类型
  • User:用户
    • name: 用户名
    • message:用户留言
    • date:用户填卷日期,自动生成
    • survey:用户填写的所属问卷
  • Question:问题
    • order:问题序号(在每个问卷里面的问题排序,因为有很多不同的问卷,所以不能直接用pk)
    • text:问题本身
    • survey:问题所属问卷
    • types 类型: 模型中类型参数(对应的类型说明)页面表单中的 input 类型 C (text) 单行文本 T(textarea)段落 R (radio) 单选 M (checkbox) 多选 N (number) 范围 S (select) 下拉选择
    • choices: 如果问题类型为 R, S, M,即单选,下拉选择或者是多选,那么意味着这个问题会有多个选项,则需要填写此项,其他的问题类型可以不用填写这项。 不同的选项用换行符区分,即一个选项一行,如填写此项,则需要至少2个选项
  • Answer:回答
    • question:回答对应的问题
    • text:回答本身
    • user:哪个用户回答的

关系:

一个 问卷类别 下有多个 问卷

一个 问卷 下会有多个 问题

一个 问卷 下会有多个 用户

一个 用户 下会有多个 问题 对应的 回答

后续再画个 ER图吧,更直观

使用

  • install django
  • git clone this repo
  • add app to settings, urls
  • python manage.py makemigrations Survey
  • python manage.py migrate Survey

About

A generic survey made by Django

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published