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

简介: 基于“python3.6.5“和“Django2.1“开发的的个人博客系统

完整代码:https://download.csdn.net/download/weixin_55771290/87398968


1. cd bbs; 
2. 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 数据库中执行:

CREATE DATABASE `bbs`;

然后终端下执行:


python manage.py makemigrations
python manage.py migrate


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

创建超级用户

终端下执行:

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


开始运行:

最后执行: python manage.py runserver

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

目录
打赏
0
0
0
0
29
分享
相关文章
【02】做一个精美的打飞机小游戏,python开发小游戏-鹰击长空—优雅草央千澈-持续更新-分享源代码和游戏包供游玩-记录完整开发过程-用做好的素材来完善鹰击长空1.0.1版本
【02】做一个精美的打飞机小游戏,python开发小游戏-鹰击长空—优雅草央千澈-持续更新-分享源代码和游戏包供游玩-记录完整开发过程-用做好的素材来完善鹰击长空1.0.1版本
64 7
|
5天前
|
【01】整体试验思路,如何在有UID的情况下获得用户手机号信息,python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
【01】整体试验思路,如何在有UID的情况下获得用户手机号信息,python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
122 82
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
36 8
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
通义灵码AI程序员实战:从零构建Python记账本应用的开发全解析
本文通过开发Python记账本应用的真实案例,展示通义灵码AI程序员2.0的代码生成能力。从需求分析到功能实现、界面升级及测试覆盖,AI程序员展现了需求转化、技术选型、测试驱动和代码可维护性等核心价值。文中详细解析了如何使用Python标准库和tkinter库实现命令行及图形化界面,并生成单元测试用例,确保应用的稳定性和可维护性。尽管AI工具显著提升开发效率,但用户仍需具备编程基础以进行调试和优化。
108 9
通义灵码 2.0 体验报告:Deepseek 加持下的 Python 开发之旅
通义灵码 2.0 体验报告:Deepseek 加持下的 Python 开发之旅
101 11
【01】python开发之实例开发讲解-如何获取影视网站中经过保护后的视频-用python如何下载无法下载的视频资源含m3u8-python插件之dlp-举例几种-详解优雅草央千澈
【01】python开发之实例开发讲解-如何获取影视网站中经过保护后的视频-用python如何下载无法下载的视频资源含m3u8-python插件之dlp-举例几种-详解优雅草央千澈
117 34
【01】python开发之实例开发讲解-如何获取影视网站中经过保护后的视频-用python如何下载无法下载的视频资源含m3u8-python插件之dlp-举例几种-详解优雅草央千澈
|
13天前
|
python泛微e9接口开发
通过POST请求向指定IP的API注册设备以获取`secrit`和`spk`。请求需包含`appid`、`loginid`、`pwd`等头信息。响应中包含状态码、消息及`secrit`(注意拼写)、`secret`和`spk`字段。示例代码使用`curl`命令发送请求,成功后返回相关信息。
38 5
10个必备Python调试技巧:从pdb到单元测试的开发效率提升指南
在Python开发中,调试是提升效率的关键技能。本文总结了10个实用的调试方法,涵盖内置调试器pdb、breakpoint()函数、断言机制、logging模块、列表推导式优化、IPython调试、警告机制、IDE调试工具、inspect模块和单元测试框架的应用。通过这些技巧,开发者可以更高效地定位和解决问题,提高代码质量。
355 8
10个必备Python调试技巧:从pdb到单元测试的开发效率提升指南
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
44 0
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
使用Python开发获取商品销量详情API接口
本文介绍了使用Python开发获取商品销量详情的API接口方法,涵盖API接口概述、技术选型(Flask与FastAPI)、环境准备、API接口创建及调用淘宝开放平台API等内容。通过示例代码,详细说明了如何构建和调用API,以及开发过程中需要注意的事项,如数据库连接、API权限、错误处理、安全性和性能优化等。
173 5

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等