文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python Flask开源博客系统Bl

2023-01-31 07:39

关注

        本博文在51CTO技术博客首发。

        开源不易,Python良心之作,真心送给广大朋友,恳请给予支持,不胜感激!

        

        大家可以从下面的地址中去体验Blog_mini的功能,我把副本部署在了腾讯云上供大家使用:

地址:Blog_mini

账号:blog_mini@163.com

密码:blog_mini


0.Blog_mini送给你们:让每个人都轻松拥有可管理的个人博客


        你从未架设过服务器或网站,希望可以接触一下这方面的知识……

        你从未使用过Linux操作系统,希望可以接触一下这方面的知识……

        你是初中生/高中生/大学生,希望能在学业之余锻炼一下自己的IT技能……

        你是Python新手,希望能有一个用Python开发的个人博客……

        你学习Python许久,希望有一个开源的项目可以用来学习与练手……

        你已经开发和架设过个人博客,但你希望拥有一个配备强大后台管理功能的个人博客……

        ……

        

        那么Blog_mini送给你们!愿你们都能轻松拥有可管理的个人博客!

        在本文的最后,将会提供体验地址给大家,让大家完全体验一下Blog_mini的功能。




1.Blog_mini是什么?        


        Blog_mini是一个用Python开发的,拥有简洁页面(支持响应式布局!)和强大后台管理功能的开源博客系统,使用Blog_mini,你将能轻松使用和管理你的个人博客!


强大管理后台:

wKioL1be2SOBfCE_AALY4wOk6EM985.png


(1)技术架构

  • 后台语言:Python

  • Web框架:Python Flask

  • 设计模式:工厂模式(程序结构清晰)

  • 前端框架:Bootstrap3

  • 数据库:sqlite或MySQL

  • 数据库设计:一对一/一对多/多对多/高级多对多(高级自引用)


(2)项目地址与文档地址 

  • 项目地址:https://github.com/xpleaf/Blog_mini

  • 功能详解:《开源分享:用Python开发的开源博客系统Blog_mini》

  • 部署文档:《Blog_mini完整部署文档》

  • 在CentOS上部署Blog_mini:《在CentOS上部署开源博客系统Blog_mini》

  • 在Ubuntu上部署Blog_mini:《在Ubuntu上部署开源博客系统Blog_mini》

        为了使开源更有意义,作者撰写了非常详尽的部署文档,涵盖在CentOS与Ubuntu上的详细部署方案,而文档的思路力图清晰与完整,看过《网络排错大讲解》的朋友们相信会有所体会,因此完全不用担心文档会写得羞涩难懂。


(3)无需为数据库知识担忧

        另外,即使你对数据库配置完全不了解也没有关系,因为Blog_mini提供两种数据库方案:

  • 完全不需要配置数据库

  • 配置MySQL数据库

        就这一点来说,这非常适合新手!而对于MySQL数据库的配置,作者也在部署文档中给出了详尽的过程,因此,无论你对数据库了解多少,都完全不用担忧数据库的配置问题!


(4)使用Python开发的规范性

        Blog_mini的所有开发和开源工作均在Linux平台下完成,使用了规范的虚拟环境开发方法,详情可以看部署文档。




2.Blog_mini功能详解


        核心功能浏览:

博文管理系统评论管理系统博文分类系统博文导航系统主页插件系统其它功能

1.可视化发表博文

2.可视化修改博文

3.添加到分类

4.博文隐藏

5.博文删除

6.博文批量删除

7.博文筛选

1.给博文评论

2.评论用户头像

3.回复评论

4.评论屏蔽

5.评论显示

6.评论删除

7.评论批量删除

1.分类添加

2.分类删除

3.分类修改

4.分类隐藏

5.分类公开

5.分类添加到导航

1.导航添加

2.导航修改

3.导航删除

4.导航升序

5.导航降序

1.系统插件

2.插件可视化编辑内容添加

3.插件修改

4.插件显示与隐藏

5.插件升序

6.插件降序

1.博客标题修改

2.博客签名修改

3.导航样式修改

4.管理员信息修改

        上面的这些功能相对都很实用。当然,其实还有很多功能可以实现,而且在技术层面上也是完全没有问题的,但由于时间关系,未能一一实现,把Blog_mini分享给大家,就是希望大家可以根据自己使用的需要,来让作者开发出更实用的功能。


(1)博文管理系统


  • 首页一览


在电脑上的部分查看效果:

wKiom1bews6Q77a2AAQE6SJ4oLM836.png

在手机上的部分查看效果:

wKioL1bewo3Ap0NjAAE1wYMshGY169.png

        可以看到,就从外观页面来看,Blog_mini的界面是比较简洁的,理由也比较简单,就是作者本身不是做前端的,所以在这方面可能会有所欠缺,往后作者会联系前端的朋友来帮忙弄一下,看能不能做出更好看的效果。但不管怎么说,希望大家更注重的是它的实用×××,而不仅仅是炫丽的前端。只要时间足够,前端页面也可以做得很好看,我也期待中!


  • 博文页面


博文内容:

wKiom1bfC0uwCpWWAAUTAFvv1cc794.png

评论页面:

wKioL1bexOyBl4bZAAH-OCWEpDg175.png评论或回复:

wKiom1bexL2CEpZyAADQM7IvffY210.png


  • 发表或修改博文

wKioL1bexeGTQx4mAAIdYvGGAtw736.png

        使用的是Tinymce的可视化编辑器,因此对于文章的编辑是比较简单,同时,还支持代码高亮的功能:

wKiom1bexjSQIuVCAACESVgAlzM447.png

        或源代码的方式编辑博文:

wKioL1bexxOC6i5YAADuBMVi-Gw601.png

        当然目前没有做的一点是图片的上传功能,这个后面看大家的需求,目前是觉得把图片放在第三方存储,然后以链接的方式插入图片会更好。


  • 博文批量管理

wKioL1bex_LgLhpnAAEpTTEUuyk601.png

wKiom1bex3Gi0eDKAAFVotT6Riw164.png

wKioL1beyEXh-mqdAAB1HIWXjZc908.png


(2)评论管理系统


  • 评论页面

普通用户看到的博文评论:

wKiom1beyLmgyupxAADwKvHV35I667.png

管理员看到的博文评论:

wKioL1beyTuwOA3AAAEAY_26Bf0573.png


  • 评论管理


wKioL1beyhXjlWwFAAHyO-kdjL0717.png

wKiom1beyZTy8ovnAAFtf5INJHQ326.png

wKioL1beyhagdTeLAAC6WGCkv2w955.png

屏蔽评论:

wKioL1beyo2AsHPeAADCmc4EIy8825.png

(3)博文分类系统


  • 博文分类

wKioL1beyx7x7gPDAAEnd6we_cY139.png添加分类:

wKiom1beytyAdPVuAACFbjVvBbA478.png


  • 博文分类导航

对于首页的导航:

wKiom1beyy3AhiLeAABnMGxDsbk103.png  wKiom1bezBfTvLKJAABQlCWl4Dw431.png      

        无论是它们的名称,还是它们的顺序,也或者是它们所包含的博文分类,你都是可以进行管理的:

wKiom1bey57BuVE2AADmWWZTuP0611.png

wKioL1bezCDDqsMJAACrpXopYPo485.png

        这样的好处是,无论你的博文有多少,你都可以非常轻松地查看和管理,根据导航和分类,轻松找到你写的博文,而不用担心博文数量过多时使得博文管理混乱。


(4)主页插件系统


  • 插件管理

wKiom1bezUviEPaHAAB1kR3TaOg979.png

        当然对于插件的排序/启用与否,也是完全可以使用的。    


  • 添加插件

wKioL1bezc3CNp5qAABfSThvPxU318.png


(5)其它功能


  • 博客基本信息与修改

wKiom1bezjHhfB0EAAEBguG2p-I235.png


  • 用户账户

wKioL1bezrOhfkH7AAIXdesPn0o994.png


  • 修改管理员密码或信息

wKiom1bezoCROUVtAACJ2I85x6g025.png


wKiom1bezrTQl2-GAACqMZHDbCs474.png


        功能就先介绍到这里吧,可以看到的是,Blog_mini有一个强大的管理后台,因此,只要你部署了Blog_mini,你就可以像使用51cto博客一样方便了,而不用去考虑代码的问题。大家可以去体验一下,然后再决定是否要使用Blog_mini来架设个人博客网站。




3.Blog_mini的意义


        其实就抛开功能上讲,从开源的角度上去说,是有着非常大的意义的。

        最初写Blog_mini就是写给自己用而已,因此根本就没有考虑管理后台的问题,但后来越是觉得,如果一个博客系统,连上面这些功能都没有,又如何去使用呢?

        于是看了看开源中国和Django中国社区,Flask社区,发现用Python开发的博客系统有后台管理的数量极少,而比较多的朋友有这样的需求,于是才决定写一个功能较为完整的管理后台,然后分享给广大朋友!

        开源与不开源的很大区别不仅仅在于代码是否分享,另外重要的一点是,有没有完整的部署文档可以供大家参考!因为就算有了源代码,如果没有部署或使用的教程,开源的意义是不大的!而正是想着要把它开源,才促使自己去写各种文档,在这个过程中,自己的能力无疑是大大提高的。

        另外一方面,对于要写运维平台的朋友来说,你总是要写类似的管理后台页面的(博主目前正在着手开发的一个监控系统亦是如此),无论你是从头到尾写管理后台的前端页面,或是直接使用开源的Bootstrap管理后台,对于后台与前端页面的数据逻辑处理,你总是会面对的,这就要求你对前端与后台的交互过程有一个整体的把握。




4.关于代码与质量


        我是第一次使用git版本控制系统,可以说没什么经验,所以大家看GitHub上的项目主页commit的次数有点多。

        但不管怎么说,有兴趣的朋友还是可以看一下Blog_mini的代码的,至少看过很多国内同类的项目,程序结构是比较混乱的,而Blog_mini使用的是工厂设计模式,参考了miguelgrinberg的flasky的设计模式,因此在程序的结构上是非常清晰,无论是要修改或是扩展开发,也会显得很有优势,对于初学的朋友,完全可以从manage.py来捉摸出整个程序的整体架构的,这一点也不难。

        非常感谢miguelgrinberg的帮助,平时遇到一些问题问他,他总能及时回复解答,尽管我们的差距那么大。另外也非常感谢师弟龙浩君帮我整理GigHub上的代码以及提出的一些建议。

        最初是跟Alex和武Sir学习Python的,那时Alex一向讲得口齿伶俐,崦武Sir虽然讲得不是很流利,但也很有深度,不知道现在怎么样了,在此谢谢两位老师。




5.Blog_mini体验地址


        大家可以从下面的地址中去体验Blog_mini的功能,我把副本部署在了腾讯云上供大家使用:

地址:Blog_mini

账号:blog_mini@163.com

密码:blog_mini




        最后,感谢大家!你们的鼓励与支持会促进我的进步!就像曾经写第一篇博文时老男孩老师的鼓励一样!

        希望大家支持开源,支持分享!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯