个人博客系统设计开发探究

个人博客系统设计开发探究

随着信息技术的迅速发展,信息传递的方式和途径逐渐变得网络化,信息革命所带来的大量高新技术与信息技术促使人类生活进入到一个崭新的阶段。越来越多的第三方博客网站孕育而生,但这些大型的第三方博客网站都存在一些弊端,大多数人并不满足于这些网站提供给用户的功能,所以开发属于自己的博客可以说是真正意义上的实现了我的博客我做主。因此以这一现象为例,搭建了一个基于Django框架的个人博客系统。该博客系统采用Django网页开发框架、Python语言和MTV设计模式实现了博客文章增删改查功能、用户管理功能、以及评论功能。这种设计是可以由一个人独自掌管并且实时更新博客内容的网站,大大增加了用户的体验感。随着信息时代的来临,人类社会正在从工业社会向信息社会迈进。在这种趋势的发展下,人与人之间的交流逐渐变得信息化。而个人博客系统是一种公布信息,展现自己思想情感的场合,同时是一个方便、高效、充满个性化的网站。相对于那些大型的第三方博客来讲,个人博客系统更加的灵活,任何用户都可以进入网站评论留言和站主交流,同时随着个人博客系统的诞生,越来越多的志同道合的用户可以更加方便的交流学习分享自己的各种经历。所以,利用当前流行的编程语言去开发属于自己的博客系统是很有必要的。

一、个人博客系统的可行性和需求分析

1.个人博客系统的可行性分析。站在计算机行业可行性角度分析,该博客系统将当前计算机流行技术和人们对博客系统的需求相结合推动了个人博客系统的发展,实现了大部分人独自掌管博客的想法,真正意义上做到了我的博客我做主。并且该博客系统维护成本低,对于个人用户的技术要求的较低,更加有利于用户对博客进行管理。站在技术可行性角度分析,该博客所应用到的Django框架和Python语言在当前时代的发展早已成熟,Django框架和Python结合不仅可以大大提高开发的效率,同时Django和Python具有易学习、要求门槛低的特点,初学者可以在短时间内上手。

2.博客的功能需求分析。从博客系统的功能需求角度来看,在博客系统中文章信息、用户信息以及评论信息等功能模块都是不可或缺的。因此博客系统功能模块应包括文章管理功能、用户管理功能、评论管理功能以及文章标签功能。除此之外,搭建一个美观的博客系统的关键也在于CSS的使用,合理的选择CSS对其进行装饰可以在博客系统中达到锦上添花的效果。具体的需求分析如下。2.1文章管理功能。文章管理功能主要是包括文章的、删除、修改以及查找。文章的属性信息指的是文章的内容、文章的标题、文章的标签、时间以及文章的作者等。2.2用户管理功能。为了提高用户管理博客的效率,该博客系统将用户等级分为两种,分别是管理员模式和普通用户模式。用户管理功能是管理员对用户信息(主要包括用户的账号、密码、邮箱以及电话等)和普通用户进行管理。2.3评论管理功能。博客管理功能主要是管理员对其他用户对文章的评论进行管理(主要包括对评论的修改和删除等)。2.4文章标签功能。文章标签功能主要是管理员对文章所属标签的增删改查的管理。

二、博客系统的总体设计

1.系统的架构设计。将Django框架和博客功能相结合,设计出该博客系统的架构如图1所示。由图1可知,该系统架构主要由视图层、控制层以及数据库层所构成。系统的视图层就是用户进入博客后所看到的画面,这一层主要包含文章的各种信息属性。控制层就是将博客系统的开发与设计部署在云服务器上,通过云服务器对各种数据进行访问和处理,大大提高了便捷性。其次,数据库层则是把文章数据、用户数据、评论数据等其他模块的数据信息存储在SQLite数据库中,方便用户对数据进行管理和使用。

2.系统的功能设计。通过对一些大型第三方博客系统架构的深入分析,设计出该个人博客系统的功能结构,如图2所示。从图2可以看出,该博客系统具有两种用户模式,分别为管理员模式和普通用户模式,对用户模式的分类可以让管理员更有效地管理博客系统,在方便管理员管理的同时也可以增加用户的体验感。将博客系统的各种功能根据用户的类型进行合理的分配,不仅是基于第三方博客系统设计上的提高,同时也是越来越多的人都想搭建一个属于自己的博客系统的原因。

3.数据库概念结构设计。在数据库设计的初步阶段,主要是根据系统的功能和数据的属性进行初步的规划,然后再根据各功能模块之间的联系进一步完善数据库的设计。数据库作为管理系统数据最核心的部分,其设计的好坏直接关乎于整个系统的工作效率。所以无论是对于数据库的逻辑设计还是数据库的物理设计对于系统来说都是至关重要的。该博客系统包含用户信息、文章信息、评论信息以及标签信息4个实体。用户信息表中主要包括电子邮箱、账号、密码、状态、权限以及创建时间等字段。文章信息表中主要包括作者、标题、内容、时间、标签、阅读量、评论量以及分类等字段。评论信息表中主要包括评论用户、评论时间、评论内容、评论用户邮箱以及评论用户联系方式等字段。标签信息表中主要包括标签名称等字段。根据各模块功能之间的联系和数据库中各表的字段设计出相关的ER图,管理员与文章的关系ER如图3所示。以上是该博客系统的逻辑设计,目的是把抽象的概念转化为易于明白的E-R图。

三、博客系统的开发工具

该博客系统采用Django框架,Python语言技术进行开发。DjangoDjango框架是使用Python语言编写,它是一个开源性质的Web框架,而且如同其他的Web框架,它使用的是MVC设计模式。同时Django相对于别的开发平台是非常便捷的,同时它最大的优势在于对数据的封装、处理以及挖掘。该博客系统使用Django的2.2.3版本,可在网上下载。PythonPython语法功能强大,可应用到各类网络开发、图形用户界面、游戏开发及移动端开发等控制中。此外,Python语言具有丰富的库函数供用户自由使用以及免费开源的优势。正是因为不断丰富的库函数使Python语言在当今时代拥有一席之地,越来越被用于大型项目的开发。该博客系统使用Python的3.8版本,可在官网下载。

四、博客系统实现

1.博客视图实现。该博客系统中首页的视图由全部文章视图、分类文章视图、归档文章视图、标签视图四部分组成,我们以这四部分视图为例,实现的程序如下:

2.具体实现。用户信息列表如图4所示。该博客系统的用户分为管理员和普通用户两种,管理员可通过点击用户的用户名进入该用户的主页修改用户的基本信息以及设置用户的权限。管理员也可通过改变用户状态将一些不良用户进行冻结,使他们不能进行恶意评论。标签信息界面如图5所示。管理员有权对所存在的标签进行名称的更改以及添加新的标签。

五、结束语

该博客系统采用Django网页开发框架、Python语言进行开发,由于Django和Python发展至今技术已十分成熟,在很大程度上提升了开发的效率,系统经过各方面的不断改进,软硬件已完全支持。个人博客系统不仅可以帮助大部分人真正意义上的实现我的博客我做主,而且由于网络的便捷性,可以更方便的和朋友共同学习和探讨知识技巧,使人们在博客系统中尽情的彰显个性。

作者:常佳宁 李阳齐 单位:佳木斯大学