新闻发布系统基于B/S模式,采用Python技术,APMServ5.2.6作为开发环境,使用MySQL 作为后台数据库来储存用户信息和新闻相关信息。本系统共实现了以下几个主要的功能模块:用户的注册可以实现更多的用户进入后台添加新闻;新闻的分类可以实现对分类的管理,新闻添加及新闻列表可以实现对新闻的查看,修改和删除;本系统前台的实现引用了Smarty模板,实现了未注册用户浏览新闻的功能。其中,在实现新闻发布系统的过程中用户的权限和Smarty模板的引用是设计的难点,用户的权限实现了新闻管理页面和用户管理页面只有管理员才能进入,但正是这两点维护了系统的安全性和便利性,通过分析与设计达到了预期开发系统的目的。
[关键词] Python;Smarty模板;新闻系统;B/S
(1) 前台部分的功能需求
前台模块主要是面向所有的浏览者,为学生和教师及新闻浏览者提供新闻的阅读和相关新闻的查询,浏览者可以在该模块下查询感兴趣的新闻,管理员可以从页面的相关链接进入后台管理,方便用户注册。
(2) 后台部分的功能需求
后台部分是管理和维护本系统的核心,主要是面向管理员,为管理员管理新闻发布系统提供各项功能。后台部分主要包括登录模块,新闻分类模块,新闻添加模块,新闻编辑模块以及新闻删除模块,它们分别执行系统要求中的各个功能。管理员登录了之后可以对新闻进行增加,删除,修改及查看。新闻发布系统至少包括以下几点功能:
新闻系统的配置管理:编辑录入和修改制作本系统的相关配置信息(网站名称、网站地址、关键字、邮箱、电话)
新闻类别管理:编辑录入新闻的父类及子类,可以在后台操作里呈现阶梯状分布(系统分类、类别名称)
新闻列表管理:查看新闻,编辑和修改新闻(新闻分类、新闻发布时间、作者)
新闻添加管理:编辑录入新闻(选择分类、新闻标题、新闻作者、关键字、新闻内容)
安全管理:系统数据的权限管理,管理员可以进行修改删除和添加等相关操作,进入所有的页面,但是注册过的普通用户只能进入指定页面。
目 录
1 绪 论 1
1.1 背景与意义 1
1.2 主要内容 1
1.3 本章小结 2
2 相关应用开发技术 2
2.1 B/S模式开发 2
2.1.1 什么是B/S模式 2
2.1.2 B/S 模式的优点和缺点 3
2.2 系统环境介绍 3
2.2.1 系统运行环境 3
2.2.2 开发环境 4
2.3 开发语言 4
2.4 Mysql数据库 5
2.4.1 Mysql概述 5
2.4.2 PythonMyAdmin 5
2.5 Apache服务器 6
2.6 其他相关技术 6
2.7 本章小结 7
3 系统分析 7
3.1 可行性分析 7
3.1.1 技术可行性分析 7
3.1.2 经济可行性分析 8
3.2 系统目标 8
3.3 系统功能需求分析 8
3.3.1 功能需求分析 8
3.3.2 性能需求分析 11
3.3.3 总体设计原则 11
3.4 系统流程分析 11
3.5 本章小结 12
4 系统设计 12
4.1 程序设计思路 12
4.2 系统总体概要设计 13
4.3 系统流程设计 13
4.4 数据库设计 14
4.4.1 数据库概要设计 14
4.4.2 数据库表的结构 15
4.5 主要模块详细设计 16
4.5.1 用户注册 16
4.5.2 用户登录模块设计 17
4.5.3 新闻列表模块设计 17
4.6 本章小结 18
5 系统实现与测试 19
5.1 系统主页面 19
5.2 后台管理员登陆界面 20
5.3 添加用户的设计与实现 21
5.4 配置信息的设计与实现 22
5.5 新闻分类的设计与实现 23
5.6 新闻列表的设计与实现 24
5.7 新闻添加的设计与实现 25
5.8 系统测试 26
5.8.1 用户注册模块测试 27
5.8.2 用户登陆模块测试 27
5.8.3 添加新闻模块测试 27
5.8.4 用户权限模块测试 27
5.9 本章小结 28
6 展望与总结 28
参考文献 29
致谢 30