python编程个人博客_[Web开发] Flask+Python 开发个人博客(一)

博主使用Flask框架从零开发了一个个人博客系统,涵盖了登录注册、文章展示、分页、权限控制等功能。博客系统模块化设计,包括Header、Footer、文章、分类Tag、分页、文章操作等。文章以时间、标题、类别和作者展示,通过时间轴展示,与分页结合减轻服务器压力。此外,还介绍了CK Editor用于新建、修改、删除文章,以及权限控制的实现,包括用户登录验证和管理员权限。
摘要由CSDN通过智能技术生成

最近几个月工(个)作(人)比(非)较(常)忙(懒),公众号一直没更新,但比较欣慰的是,广大测试同仁并没有抛弃我,反而关注我的人又多了很多,难道这就是传说中的春节效应?

虽说没更新,但自己也没闲着,用Flask撸了个个人博客(稍微改动下就是个论坛),因为是从零写起,开发过程中对web安全测试也有了一点新理解,今天开始我就逐渐分享给大家。

先给大家看下网站的整体效果:

登录页面(也是首页):

9ef805e65285

注册页面:

9ef805e65285

这两个页面都实现了基本的验证,比如:

用户名密码为空:

9ef805e65285

密码不正确:

9ef805e65285

正确登录后会跳转到系统主页面,长下面的样子:

9ef805e65285

这个页面看起来不复杂,其实由好多个部分组成,技术难点也都在这个页面,具体来说这个页面分为以下模块:

Header

Footer

文章模块

文章分类tag

分页模块

新建/修改/删除 文章模块。

文章详页模块

权限控制模块(包括用户,权限,登录验证,管理员验证等)

项目配置(使用instance)

以上每个模块都说解耦的,可以随意拼接使用。

下面我们来解释下各个模块作用:

Header

Footer

前两个就不解释了。

文章模块

所有的文章,也是个人博客最重要的部分,简单起见,我以 “时间|文章标题|文章类别|作者” 这样的形式来展现,文章标题点击会进入具体的文章detail页,类别点击会列出所有同类别的文章并且排序显示。

这个模块会跟下面的分页联系起来,一次只从服务端请求一个页面的文章,防止服务端压力过大。

文章分类tag

点击主页上的模块,或者在任何文章的类别上点击,会进入下面的两个页面:

一个是列在Header上的类别,类别选中会高亮。:

9ef805e65285

一个是未列在Header上的类别,无高亮:

9ef805e65285

可以看到分页是跟着类别走的,主页更准确。

分页模块

参考了Flask上的分页,加上用了Bootstrap的样式,后面我们相信解释。

新建/修改/删除 文章模块。

用了CK Editor,最好的编辑器之一。

新建:

9ef805e65285

修改:

9ef805e65285

删除:

9ef805e65285

文章详页模块

打开就是文章的内容,注意页面元素,这个用了Flask里的BluePrint技术。红框圈起来的是user和admin组,这个是对于文章权限本身而言,不是用户组。

一个是对文章只有浏览权限,没有修改和删除按钮:

9ef805e65285

一个是文章的作者或者Admin用户组的用户,对文章有full control权限

9ef805e65285

权限控制是全局的,比如登录与否的检查,记住用户功能,是否有管理权限等。大都后端代码实现

9ef805e65285

以上就是这段时间我的成果了,所谓赠人玫瑰,手有余香,从今天开始我将一步步按照本文详解解说如何开发个人论坛,等这个系列完成后,你也是测试开发了 :)

最后附上项目代码文件层级,方便理解。

9ef805e65285

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值