python基于移动端的个人博客系统的设计与实现flask-django-php-nodejs

博客系统是能够让网民记录分享和学习的一个网站,在博客中我们可以发表文章对感兴趣的事情进行讨论。而基于移动端的个人博客系统的设计是就为了迎合广大用户需求创建的一个界面简洁、有定向内容、业务逻辑简单易操作的博客系统。本文以博客系统的设计与实现为例,提出了利用Android 平台开发设计和实现个人博客应用的思想,并对其制作过程和结果进行了研究和展示。个人博客系统是基于B/S架构模式,有针对性地采用uniapp 与django框架,管理员数据库系统选用MYSQL数据库。系统主要分为前端用户和后台管理员两个部分,用户功能模块包括个人中心、博客信息、我的收藏管理、在线客服、我要发贴、我的发帖等功能模块;管理员包括个人中心、用户管理、博客信息管理、博客分类管理、博客论坛、系统管理等功能模块。
全文首先分析了课题的研究背景和研究现状,然后根据系统开发流程分析了系统的可行性和需求。然后,通过对系统总体功能模块的设计,绘制了系统的功能模块图,并设计了整个数据库的结构。根据设计的框架,实现了系统的各个功能模块。最后,对设计的系统进行测试。测试结果表明,系统能够实现所需的功能,达到了预期的效果,运行状况良好。
语言:Python
框架:django/flask
软件版本:python3.7.7
数据库:mysql 
数据库工具:Navicat
前端框架:vue.js
通过比较两个不同因素的框架,可以看出Flask和Django不能被标记为单一功能中的最佳框架。当Django在快速发展的大型项目中看起来更好并且提供更多功能时,Flask似乎更容易上手。这两个框架对于开发Web应用程序都非常有用,应根据当前的需求和项目的规模来选择它们。
最新python的web框架django/flask都可以开发.基于B/S模式,前端技术:nodejs+vue+Elementui+html+css
,前后端分离就是将一个单体应用拆分成两个独立的应用:前端应用和后端应用,以JSON格式进行数据交互.充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护等特点
目录
第1章 概 述 3
1.1 课题研究背景 3
1.2 国内外研究现状 3
1.3 课题研究的意义 4
第2章 系统开发技术介绍 5
2.1 Android技术 5
2.2 MySQL数据库 5
2.3django框架 6
2.4 B/S架构 6
2.5 运行环境 6
2.6 本章小结 7
第3章 系统分析 8
3.1 可行性分析 8
3.1.1 经济可行性分析 8
3.1.2 技术可行性分析 8
3.1.3 操作可行性分析 8
3.2 系统现状分析 8
3.3 功能需求概述 9
3.4 用例分析 10
3.5 本章小结 11
第4章 系统设计 12
4.1 详细设计 12
4.2 架构设计 12
4.3 系统架构类图 14
4.4 数据库设计 15
4.4.1 数据库E-R图 15
4.4.2 数据库表 16
4.5 本章小结 20
第5章 系统实现 21
5.1 App前台功能的实现 21
5.1.1登录界面的实现 21
5.1.2注册界面的实现 21
5.1.3系统首页功能的实现 22
5.1.4博客信息 23
5.1.5用户功能 24
5.2 APP后台管理员的实现 24
5.3 本章小结 28
第6章 系统测试 29
6.1 对功能的测试 29
6.2 用例测试 29
6.3 性能测试 30
6.4 测试结果分析 30
6.5 本章小结 30
结 论 31
参考文献 32
致 谢 33

第1章 概 述
1.1 课题研究背景
如今博客系统越来越成熟,当今社会也正快速向信息化社会发展,开发个人博客有着举足轻重的意义。第一个就是能记录和展示自己,不同于朋友圈、空间、微博,个人博客可以更加充分的地记录和展示个人,具备个性化的定制功能。既方便功能扩展又不拘一格,可以更好的体现个人技术水平。
如今,人们通过网络可以做很多事情,比如最近很流行的在线学习、居家办公,博客网或许也可以做到人人们随时随地学习,也可以交到更多的朋友。在博客网上,论坛都是分类划分,只要登上博客网,我们总能找到自己喜欢的事情。本文介绍的基于移动端的个人博客就是基于论坛的模式而开发,它是一个提供广大用户的交流平台,用户可以在该平台获取最新动态,不仅可以结识更多的好友,为用户提供多姿多彩的休闲体验和探讨信息的交流,还可以发表一些技术性的文章,供人们讨论,相互学习。
1.2 国内外研究现状
曾经,博客贴吧也是一个非常火热的互联网社区平台,可以称得上占据了中国互联网的“半壁江山”。博客是以兴趣爱好一致的一些人群互动的平台,同好网友聚集在这里交流话题、自我展示、结交朋友,涵盖了娱乐、游戏、小说、生活等方方面面。
而如今,随着短视频、还有各大聊天平台的兴起,曾经热门的社区竟渐渐没落,那这个一度被网友们称为是“互联网文化发源地”的博客社区为什么会跌落神坛,招致流失用户的?这或许和博客用户自身是离不开的,移动互联网时代都是“得用户者得天下”,新的社交平台不断涌现,抖音、知乎、微博等平台吸引了大量年轻人的涌入。
据相关数据统计,我国年龄在30-39岁网民数量最多,占20.4;20-29岁和40-49岁的网民数量分别为19.9%和18.7%。如此一来,贴吧的年轻用户一流失,还剩下的贴吧用户便寥寥无几。当然,贴吧衰落的更为重要的原因,可能是在于它自身内部管理方面比较混乱,以及在内容方面造成了用户的使用疲倦以至于不断流失。例如,贴吧在很早就推出一项名为 “贴吧推广”的业务,它具体的操作就是将广告分别为版头广告,贴吧主题列表页和帖子详情页都挂满了广告,在贴吧中交流或浏览,平均每10条帖子就会覆盖3条广告。
另外,在内容方面,由于贴吧会员的成本较低,而且,新会员发帖质量低,大多为无意义的水贴,使用户体验感逐渐下降。而贴吧的管理团队对于这些问题一直都没有拿出有效的办法来解决,让许多老用户也对贴吧的好感荡然无存,再加上一些众所周知的原因,它的日渐衰落或许只是时间问题。
虽然属于博客的时代已经过去了,但也不乏一些优秀的博客网站如今还拥有着广大的用户群体,比如受程序员群体喜爱的CSDN博客网,CSDN几乎是专门为程序员们打造的一个技术网站,很多IT技术大牛在该网站分享自己的技术经验,供网友们学习和交流技术。目前,博客有几方面的作用:一是一种个人人际交流方式;二是以个人为中心的信息过滤和知识的管理;三是以个人为中心的传播出版。所以,我认为我们目前比较缺乏的是比较优质量的以人为中心的信息过滤管理的供网友交流和学习博客社区。
1.3 课题研究的意义
我们在平常的学习和生活中经常会多次遇到同一个问题,这次解决完了下次遇到可能还会忘,每次遇到同一个问题都要花时间去解决,浪费了很多时间,所以,我希望通过博客写作把自己遇到的问题和解决的思路记录下来,以记录自己学习的成长,还有,随着网络的飞速发展,我们也忽略了老年群体,一部分老年群体对上网可能会觉得有点困难,眼花缭乱的功能界面使得他们很难操作,,在生活上造成了很大的不便,在此,为了方便广大的老年客户的需求,我专门构建一款功能简洁且基于移动端的个人博客系统。
图3-1 系统功能结构图
3.4 用例分析
(1)用户管理

表3-1 用户管理用例分析
用例名称 前置条件 操作步骤
用户管理 系统登录正常,网络连接正常。 (1)管理员打开系统。
(2)进入登录页面,输入用户名及密码。
(3)登录成功进入系统主面。
(4)单击用户进入用户管理界面。
(5)单击查询按钮,进入用户查询结果显示界面。
(6)按提示,对用户信息进行添加,删除和修改等操作。

(2)管理员管理
表3-2 管理员管理用例分析
用例名称 前置条件 主要操作
管理员管理 系统登录正常,网络连接正常。 (1)管理员打开系统。
(2)进入登录页面,输入用户名及密码。
(3)登录成功进入系统主界面。
(4)单击进入管理员管理界面。
(5) 单击查询按钮,进入管理员查询结果显示界面。
(6)按提示,对管理员信息进行添加,删除和修改等操作。
(7)更新管理员信息表。
3.5 本章小结
本章主要是对系统进行分析,主要介绍了可行性分析、功能需求分析、用例分析、运行环境等。

第4章 系统设计
本章将从系统架构设计、系统业务流程两个方面具体介绍软件部分的设计方案。
4.1 详细设计
登录模块有许多规则,这些规则是用来限制用户权限的,没有登录账号的用户除了浏览文章之外不可以对网站进行操作,用户进入系统前要进行登录,登录成功后方可对相关权限的操作。
 4.4.2 数据库表
本系统采用MySQL管理数据,系统使用的数据表具体展示部分如下所示。
表4-1:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP

表4-2:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP

表4-3:博客信息评论表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
avatarurl varchar 200 头像
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容

表4-4:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值

表4-5:在线客服
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
adminid bigint 管理员id
ask longtext 4294967295 提问
reply longtext 4294967295 回复
isreply int 是否回复

表4-6:博客信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
bokebiaoti varchar 200 博客标题
bokefenlei varchar 200 博客分类
bokefengmian varchar 200 博客封面
bokeneirong longtext 4294967295 博客内容
faburiqi date 发布日期
yonghuzhanghao varchar 200
yonghuxingming varchar 200
gexingqianming varchar 200 个性签名
sfsh varchar 200 是否审核 否
shhf longtext 4294967295 审核回复
thumbsupnum int 赞 0
crazilynum int 踩 0
clicktime datetime 最近点击时间

表4-7:博客分类
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
bokefenlei varchar 200 博客分类

表4-8:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 用户账号
mima varchar 200 密码
yonghuxingming varchar 200 用户姓名
touxiang varchar 200 头像
xingbie varchar 200 性别
nianling int 年龄
shouji varchar 200 手机
youxiang varchar 200 邮箱
gexingqianming varchar 200

表4-9:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture varchar 200 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注

表4-10:博客资讯
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture varchar 200 图片
content longtext 4294967295 内容

表4-11:博客论坛
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 帖子标题
content longtext 4294967295 帖子内容
parentid bigint 父节点id
userid bigint 用户id
username varchar 200 用户名
avatarurl varchar 200 头像
isdone varchar 200 状态

4.5 本章小结
本章主要对系统总体进行设计,针对系统的各个功能模块进行说明,给出各个子程序的设计流程图,包括系统主程序、系统设,主要进行了系统的架构设计、数据库设计等。

第5章 系统实现
5.1 App前台功能的实现
5.1.1登录界面的实现
首先双击打开App,连上网络之后会显示出本系统的登录界面,这是进入App的第初始页面“登录”,能成功进入到该登录界面则代表App的开启是成功的,接下来就可以操作本系统所带有的其他所有的功能。
 第6章 系统测试
对系统的测试贯穿了整个系统开发的过程,在系统开发中起着重要的作用。系统测试必须贯穿系统软件的整个生命周期,尽快介入测试,能更快地发现错误,减少错误修复的时间成本。系统的测试一般包括对接口的测试、功能的测试、安全性测试、性能的测试和兼容性的测试。
6.1 对功能的测试
想要进行功能测试要熟悉业务需求,对功能的测试内容如下表所示:

6.2 用例测试
用例测试内容包括:可操作性、可理解性、可学习性等方面。用例尽量覆盖已有需求或者潜在需求,尽量对系统测试全面。执行用例时要严格按照用例进行测试。具体测试方面如表6-2所示。
表6-2 系统用例测试
编号 用例名 操作方法 预算结果 检测结果
1 用户登陆 填写用户名和密码 正确输入用户名和密码后跳转到系统主界面;用户名或密码不正确将跳出提示对话框 预期结果达成
2 个人博客信息添加 输入个人博客信息,点击“添加”按钮 正确存储个人博客信息 预期结果达成
3 查询个人博客信息 查看列表,按条件筛选合适的信息进行详查 个人博客信息显示正确 预期结果达成
6.3 性能测试
性能测试主要是为了模拟系统在多人使用的运行环境中测试系统的性能最大的承受压力。对关键的技术指标表示支持系统的运行速度,网络顺畅和并发的数量。当多个人使用时,系统不会崩溃。
(1)运行的速度:测试在不同计算机上运行时没有出现死机的情况。
(2)响应的时间:对最快,平均和最大的响应时间。经过测试,局域网应答时限参数能满足用户的需求,属于正常承受范围。
(3)支持并发节点数:系统在并发节点上达到45个时,网络运营的速度波动较大,时间延迟十秒之间,符合客户需求。
6.4 测试结果分析
通过对以上测试结果的分析,该系统符合个人博客的需求和需求。实现了所有的基本功能点,操作简单,操作过程是满足业务需求的推广软件,产品运行性能良好,大众化。
6.5 本章小结
本章主要阐述对本系统的具体测试工作,侧重功能和性能这两个方面对系统进行测试,严格遵守现代软件开发流程,使得对软件的测试能够贯穿到整个软件的开发周期,尽早的介入测试也能够尽快的发现系统的错误,能够降低系统修复的成本。

结 论
系统的开发通过简单明了的方式实现个人博客信息管理和系统管理,主要论述怎样利用Android技术来开发出对界面简洁、性能优化、可扩展性强和安全可靠操作简单的个人博客。系统主要分为用户和管理员两部分,用户包括登录注册、个人信息修改;对博客信息和博客论坛等功能进行管理;管理员包括个人信息修改,对博客信息、博客分类、博客论坛和系统等功能进行管理。然后根据这些功能对系统进行分析设计,对所用到Android、python、mysql和B/S结构等相关技术进行介绍,接着进行需求分析的描述。接着是概要设计和详细设计。描述系统功能实现的方案及过程,以及如何实现系统的测试工作和后期系统的维护。
该设计实现了个人博客系统,根据整体的设计实现了个人博客的基本功能。由于时间有限和我学到的东西,系统仍需要在很多地方进行改进,而且还有很多我还没有接触过的功能。我将在接下来的时间里逐步却说加强并完善。
第6章 系统测试
对系统的测试贯穿了整个系统开发的过程,在系统开发中起着重要的作用。系统测试必须贯穿系统软件的整个生命周期,尽快介入测试,能更快地发现错误,减少错误修复的时间成本。系统的测试一般包括对接口的测试、功能的测试、安全性测试、性能的测试和兼容性的测试。
6.1 对功能的测试
想要进行功能测试要熟悉业务需求,对功能的测试内容如下表所示:

6.2 用例测试
用例测试内容包括:可操作性、可理解性、可学习性等方面。用例尽量覆盖已有需求或者潜在需求,尽量对系统测试全面。执行用例时要严格按照用例进行测试。具体测试方面如表6-2所示。
表6-2 系统用例测试
编号 用例名 操作方法 预算结果 检测结果
1 用户登陆 填写用户名和密码 正确输入用户名和密码后跳转到系统主界面;用户名或密码不正确将跳出提示对话框 预期结果达成
2 个人博客信息添加 输入个人博客信息,点击“添加”按钮 正确存储个人博客信息 预期结果达成
3 查询个人博客信息 查看列表,按条件筛选合适的信息进行详查 个人博客信息显示正确 预期结果达成
6.3 性能测试
性能测试主要是为了模拟系统在多人使用的运行环境中测试系统的性能最大的承受压力。对关键的技术指标表示支持系统的运行速度,网络顺畅和并发的数量。当多个人使用时,系统不会崩溃。
(1)运行的速度:测试在不同计算机上运行时没有出现死机的情况。
(2)响应的时间:对最快,平均和最大的响应时间。经过测试,局域网应答时限参数能满足用户的需求,属于正常承受范围。
(3)支持并发节点数:系统在并发节点上达到45个时,网络运营的速度波动较大,时间延迟十秒之间,符合客户需求。
6.4 测试结果分析
通过对以上测试结果的分析,该系统符合个人博客的需求和需求。实现了所有的基本功能点,操作简单,操作过程是满足业务需求的推广软件,产品运行性能良好,大众化。
6.5 本章小结
本章主要阐述对本系统的具体测试工作,侧重功能和性能这两个方面对系统进行测试,严格遵守现代软件开发流程,使得对软件的测试能够贯穿到整个软件的开发周期,尽早的介入测试也能够尽快的发现系统的错误,能够降低系统修复的成本。

结 论
系统的开发通过简单明了的方式实现个人博客信息管理和系统管理,主要论述怎样利用Android技术来开发出对界面简洁、性能优化、可扩展性强和安全可靠操作简单的个人博客。系统主要分为用户和管理员两部分,用户包括登录注册、个人信息修改;对博客信息和博客论坛等功能进行管理;管理员包括个人信息修改,对博客信息、博客分类、博客论坛和系统等功能进行管理。然后根据这些功能对系统进行分析设计,对所用到Android、python、mysql和B/S结构等相关技术进行介绍,接着进行需求分析的描述。接着是概要设计和详细设计。描述系统功能实现的方案及过程,以及如何实现系统的测试工作和后期系统的维护。
该设计实现了个人博客系统,根据整体的设计实现了个人博客的基本功能。由于时间有限和我学到的东西,系统仍需要在很多地方进行改进,而且还有很多我还没有接触过的功能。我将在接下来的时间里逐步却说加强并完善。
致 谢
在这次毕设的开发过程中遇到重重困难,但幸运的是经过我的思考和不停地尝试解决问题,还有在导师的细心指导下我终于圆满地完成了此次毕业设计。在此,我深深地感谢我的导师,每次遇到难题时,我的导师总是会耐心给我解答,他每时每刻的督促使我不敢有丝毫的怠慢,在您的细心指导下我才能快速的掌握系统的相关功能,在您的大力指导下我才能将课本上的知识与自己所设计的系统相结合,真正的做到学以致用。感谢您牺牲自己的休息时间为我们解惑,利用其丰富的教学和项目经验对我们的每一次提问进行耐心指导。认真考虑了系统每一步的实施,发现开发一款优秀的软件绝非一朝一夕之事,需要长期的积累和经验。通过这段时间的亲身经历,我感觉自己学到了:收集、整理资料、共同协作、分析及处理问题等许多方面的知识。然后,在老师的引导和学生的帮助下,让我对这个毕设进行了更深入的思考。并花费了大量的心思和精力来完成这个系统。在这段时间里,我学到了以前没有掌握过的东西。更重要的是,我了解开发人员在开发系统软件时所需要的方法、策略和步骤。如何思考一些问题,以及如何解决它们。最终我通过这个系统的设计学到不少的东西,也接触到很多以前没有接触过的知识。同时还得到了宿友们的支持和帮助,让我重新认识了建立友情的重要性,在将来能够帮助我的事业生涯中一帆风顺!
再次感谢鼓励我的老师和朋友,以及给予我帮助与鞭策的每一个人,我会带着大学收获的知识走向社会,报校祖国!

  • 25
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值