基于Python的博客系统的设计与实现

个人 Blog 博客系统 基于"python3,6,5"和"Django2,1"开发的的个人博客系统, 层级结构 cd bbs; tree

本文包含相关资料包-----> 点击直达获取<-------

个人 Blog 博客系统

基于"python3.6.5"和"Django2.1"开发的的个人博客系统。

层级结构

cd bbs; tree .

├── bbs │ ├── __init__.py │ ├── settings.py # 配置文件 │ ├── urls.py # 路由配置 │ └── wsgi.py # web网关模块 ├── blog │ ├── admin.py # 后台管理 │ ├── apps.py # 应用 │ ├── forms.py # form组件 │ ├── __init__.py │ ├── migrations # ORM生成文件 │ │ ├── 0001_initial.py │ │ ├── __init__.py │ ├── models.py # 数据库模型表 │ ├── templatetags # tag归档模块 │ │ ├── __init__.py │ │ ├── my_tags.py │ ├── tests.py │ ├── urls.py # 二层分级路由 │ └── views.py # 视图函数 ├── manage.py # 启动文件 ├── media # 媒体文件相关 │ ├── add_article_img │ └── avatars ├── static # 静态文件 │ ├── bootstrap │ ├── fontawesome │ ├── img │ ├── jquery-3.3.1.js │ ├── kindeditor │ ├── mystyle.css │ ├── setupajax.js │ └── theme │ ├── cyy.css │ └── jesi.css ├── templates # 模板文件 │ ├── add_article.html │ ├── article_detail.html │ ├── base.html │ ├── home.html │ ├── index.html │ ├── left_menu.html │ ├── login.html │ └── register.html └── util # 工具包 ├── __init__.py ├── page.py

主要功能:

  • 用户的登录,注册,注销,使用滑动验证的人性化体验,并且对新注册用户,用户名重复进行了实时校验。
  • 对邮箱格式,重复,以及密码长度有着更为细致的安全体验。
  • 文章,页面,分类目录,标签的添加,删除,编辑等。
  • 文章删除做了更加人性化的二次确认优化。
  • 添加文章页面支持 编辑器 ,支持代码高亮,支持图片图文和地址等各种格式的插入。
  • 楼层回复功能,支持@用户的楼中楼回复。
  • 侧边栏功能,时间归档,文章分类,文章标签等。
  • 支持预防 XSS 攻击功能,防止恶意用户进行 XSS 代码攻击。
  • 支持点赞点踩功能,并且进行了人性化的设置。

安装

使用 pip 安装:

pip install virtualenv

virtualenv -p /usr/bin/python3.6 my_project_env

source my_project_env/bin/activate

pip3 install -Ur requirements/base.txt

配置

配置都是在 setting.py 中.部分配置迁移到了后台配置中。

很多 setting 配置我都是写在环境变量里面的.并没有提交到 github 中来.例如邮件部分的配置等.你可以直接修改代码成你自己的,或者在环境变量里面加入对应的配置就可以了.

test 目录中的文件都是为了 travis 自动化测试使用的.不用去关注.或者直接使用.这样就可以集成 travis 自动化测试了.

linux 环境中使用 Nginx + UWSGI + virtualenv + supervisor 来部署的脚本和 Nginx 配置文件.可以参考我的文章:

使用云服务器部署个人博客系统

有详细的部署介绍.

运行

修改 blog/setting.py 文件更新个人数据库配置,如下所示:

DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'bbs', 'USER': 'root', 'PASSWORD': 'password', 'HOST': 'host', 'PORT': 3306, } }

创建数据库

MySQL 数据库中执行:

sql CREATE DATABASE `bbs`;

然后终端下执行:

python manage.py makemigrations python manage.py migrate

即可利用 Django 自带的 ORM 创建所需的 MySQL 库表。

创建超级用户

终端下执行:

`python manage.py createsuperuser` 输入用户名以及相关密码后即可完成创建超级用户,登录admin.

开始运行:

最后执行: python manage.py runserver

浏览器打开: http://127.0.0.1/ 就可以看到效果了。

更多配置:

更多配置介绍

问题相关

有任何问题欢迎提 Issue,或者将问题描述发送至我邮箱 guocheng@daixiaomi.com .我会尽快解答.

参考文献

  • 基于SSH框架模式的博客系统的设计与实现(西北师范大学·王刚成)
  • 基于Java EE的个人博客管理系统的设计和实现(内蒙古大学·闫伟光)
  • 客户办公室系统的设计与实现(山东大学·朱瑞泉)
  • 基于Spring Boot的多用户博客系统的设计研究(青海师范大学·罗涛)
  • 面向博客的主题爬虫设计与实现(华中师范大学·刘嫚)
  • 基于Spring Boot的多用户博客系统的设计研究(青海师范大学·罗涛)
  • Blog论坛搜索与排名技术(扬州大学·朱燕)
  • 基于SSH架构的个人空间交友网站的设计与实现(北京邮电大学·隋昕航)
  • 基于SSH框架的博客用户分享平台的设计与实现(河北工业大学·刘磊)
  • 基于MD5改进算法的安全教师博客系统设计及开发(湖南大学·刘曼春)
  • 基于Android平台的微博系统设计与开发(燕山大学·周彦超)
  • 基于SSH框架模式的博客系统的设计与实现(西北师范大学·王刚成)
  • 基于SSH框架的博客用户分享平台的设计与实现(河北工业大学·刘磊)
  • 基于Android平台的微博系统设计与开发(燕山大学·周彦超)
  • 客户办公室系统的设计与实现(山东大学·朱瑞泉)

本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:源码港湾 ,原文地址:https://bishedaima.com/yuanma/35606.html

相关推荐

  • 超市订单管理系统 (Servlet 版)

    超市订单管理系统 (Servlet 版) 1,项目架构 1,1,功能模块设计 : 1,2,数据库设计 : 2,项目搭建准备工作 环境:Maven 3
    2024年05月14日
    89 1 16
  • 基于SpringBoot框架的的毕业设计系统的开发

    这是一套采用Java语言编写的🔥🔥SpringBoot毕业设计项目源代码🔥🔥,该项目运用了SpringBoot框架,并结合Vue技术进行开发,支持在Idea或Eclipse环境下运行
    2024年05月23日
    43 1 8
  • 基于SSM框架的求职招聘网站源码,javaweb+mysql

    使用SSM框架搭建的求职招聘网站是当前互联网发展的必然产物之一,随着经济的发展和人们就业观念的转变,传统的招聘方式已经无法满足日益增长的人才需求,因此,利用互联网技术建立一个高效
    2024年05月07日
    10 1 3
  • 基于Java的连连看游戏设计与实现

    基于Java的连连看游戏设计与实现 摘 要 连连看是一种消除类益智游戏,核心要求是在规定的时间内,消除游戏界面中选中的两张相同的图案,直至完全消除所有图案
    2024年05月14日
    3 1 2
  • 基于SpringBoot框架的失物招领平台

    这是一套采用🔥🔥SpringBoot框架构建的失物招领系统源代码,主要编程语言为Java,并结合Vue技术进行开发,开发工具可选用Idea或Eclipse,此系统适合作为毕业设计或课程设计任务
    2024年05月23日
    8 1 1
  • python实现的基于源IP加密的传输程序

    python实现的基于源IP加密的传输程序 一,设计目标 1,1 目标概括 以对发送数据内容进行隐藏且隐蔽发送方为目标实现一种传输方法,并编写程序实现
    2024年05月14日
    3 1 1
  • 基于Vue2.0实现简易豆瓣电影webApp

    基于Vue2,0实现简易豆瓣电影webApp 1,运行项目 clone项目到本地,进入项目文件夹,安装依赖 javascript git clone https://github
    2024年05月14日
    10 1 1
  • 基于SSM框架的员工管理系统源码、JavaWeb+Mysql

    基于SSM框架的员工管理系统源码,JavaWeb+Mysql 随着信息技术的不断发展和应用,员工管理系统在企业管理中发挥着重要作用,基于SSM框架的员工管理系统是一种集成了SpringMVC
    2024年05月07日
    3 1 1
  • 基于SSM和MySQL实现的乒乓球比赛管理系统

    基于SSM和MySQL实现的乒乓球比赛管理系统 1,项目简介 1,1 背景分析 如今世界杯足球赛用计算机唯一指定供应商美国 Sun 公司宣布,运行1994年美国世界杯足球赛整个信息系统的 SPARCcenter~(TM)2000服务器已经安装完毕
    2024年05月14日
    6 1 2
  • 基于SpringBoot的简易秒杀系统

    【秒杀系统】零基础上手秒杀系统(一):防止超卖 【秒杀系统】零基础上手秒杀系统(二):令牌桶限流 + 再谈超卖 【秒杀系统】零基础上手秒杀系统(三):抢购接口隐藏 + 单用户限制频率 【秒杀系统】零基础上手秒杀系统(四):缓存与数据库双写问题的争议 【秒杀系统】零基础上手秒杀系统番外篇:阿里开源 MySQL 中间件 Canal 快速入门 【秒杀系统】零基础上手秒杀系统(五):如何优雅的实现订单异步处理 【秒杀系统】从零打造秒杀系统(一):防止超卖 前言 大家好
    2024年05月14日
    6 1 1

发表回复

登录后才能评论