已完成
用户登录注册,问题发布、回答问题、种类筛选、我发布的问题
三次迭代目标
主要完成管理员的功能,以及补全普通用户的相关视图界面(我关注的问题、我回答的问题,需要相关数据库操作查询支持)
电子邮件的支持
普通用户需求
分页功能(数据库查询提供支持)
注册时电子邮件的验证
管理员需求:
1.对已发布的问题进行删除
2.对已注册的用户进行删除
3.增加问题的种类
4.过目功能:刚发布的问题和评论不马上显示在相关页面,在管理员界面过目审查后才能显示(数据库增加字段,比如unread)
5.禁止对某个问题继续增加回答(数据库要增加相关字段)
6.安全问题的考虑
分工
sjy:web后端,表单视图数据传送定义
wz:数据库功能拓展,更新ER图
zyh:服务器部署、性能优化
zky:前端页面布局设计
lzq:前端页面布局设计、测试
bxh:email功能,辅助后端开发
lq:管理员部分的需求文档,原型设计,项目展示测试,考虑增加js等友好的web交互功能
htl:程序流程图(考虑增加了管理员相关功能的整体流程),用例图,考虑增加js等友好的web交互功能
管理员页面
更改
base.html:当登录用户是管理员的时候,导航栏上变为多个下拉菜单,以供管理员进行功能选择:删除问题,删除用户,增加问题种类等
导航栏说明
New下拉菜单:
- 增加新的category
Manage下拉菜单:
- Questions:管理发布的问题(包括删除,过目)
- Category: 管理类别
- Answers:管理回答(删除,过目)
- Users: 管理注册的用户
setting: 设置管理员密码等信息
新增的页面:
用户页面:
front/myfollow.html 我关注的问题
front/myAnswer.html 我做出的回答
管理页面:
dashboard/manage_category.html 对某一类问题进行删除,或删除该类名(该页面中有链接指向edit_category.html)
dashboard/edit_category.html 增加一类问题的类名
dashboard/manage_questions.html 管理问题(该页面中有链接指向manage_answers.html)
dashboard/manage_answers.html 管理某个问题的所有回答
dashboard/manage_users.html 管理已注册用户
数据库模块的更改
models.py中对QuestionInfo和AnswerInfo都加了一个bool类型的名为unread的字段(用于判断新提出的问题是否已经过目,True表示还未过目,False表示已经过目),数据库功能需要增加GET_ALL_QUESTION_READED, GET_ALL_QUESTION_UNREAD,
GET_ANSWER_READED,
GET_ANSWER_UNREAD等类似功能,并且在取数据的时候,只索取unread=False的行。
还需要增加的功能
GET_CATEGORY_BY_NAME : 根据种类名称获取种类(用于判断是否存在重复类名)
通用功能:多行查询时,获取查询到的行数