Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

24python/django_blog_tutorial

Repository files navigation

Build Status

Django搭建个人博客教程

这是面向新人的Django搭建个人博客教程的项目代码。

教程为零基础的小白准备,目的是快速搭建一个博客网站。

教程传送门:

注:两个版本是完全相同的。需要留言请前往个人博客。

教程特点

  • 零基础、免费、中文
  • 基于最新的 Python 3.7、Django 2.1 和 Bootstrap 4 版本
  • 完整项目代码,以及详细的注释
  • 博主热情的技术支持

适合人群

  • 拥有一台能开机的电脑
  • 有一点点最基础的python编程知识
  • 每天能抽出一个小时学习

不要犹豫,现在立刻开始Django的学习吧!

教程导航

章节编号与GitHub仓库分支(Branch)编号是对应的。

01 - 前言

  • Django 简介 / 资源列表 / 提问须知

02 - 教程的开发环境

  • 环境简介 / 安装 Python / 配置虚拟环境
  • 安装 Django / 创建 Django 项目 / 运行 Django 服务器
  • 代码编辑器 / 浏览器选择

03 - 创建 APP

  • 认识项目结构 / 注册 APP / 配置访问路径

04 - 编写 Model

  • Django 模式简介 / 模型简介
  • 编写 Model / Model 字段分解
  • 数据迁移

05 - View 视图初探

  • 第一个视图
  • 网站后台概念 / 创建管理员 / 注册 app
  • 检视数据库

06 - View 及 Template

  • 改写视图函数
  • 编写模板 / 错误分析
  • Debug 工具

07 - 使用Bootstrap改写模板

  • 配置 Bootstrap 4
  • 编写模板 / 模板继承

08 - 编写文章详情页面

  • 详情页面视图 / 详情页面模板
  • 优化网页入口 / 参数传递

09 - 使用Markdown书写文章

  • 安装 Markdown
  • 在视图中使用 Markdown / 模板渲染
  • 代码高亮 / 故障排查 / 自定义样式

10 - 发布新文章

  • 表单类 / 处理创建请求 / 获取数据
  • csrf_token / 模板中的表单 / 优化写文章入口

11 - 删除文章

  • get 方式删除文章 / post 方式删除文章
  • 弹窗功能 / 再谈 CSRF

12 - 更新文章

  • 更新文章视图 / 编写模板 / url 和入口

13 - 用户的登录和登出

  • 用户管理简介 / 再谈表单类
  • 登录视图 / Session 介绍 / 登录模板 / url 及其他设置
  • 用户的登出

14 - 用户的注册

  • 注册表单 / 注册视图 / 模板和 url

15 - 用户的删除

  • 权限与视图 / 检查数据库

16 - 重置用户密码

  • 安装三方库 / 使用库
  • 配置邮箱 / 常见错误

17 - 拓展用户信息

  • 拓展 User / 重建数据库
  • 表单、视图和模板 / 修改 article 视图 / 配置后台

18 - 上传头像

  • 必要配置 / 编写 MTV

19 - 文章分页

  • Paginator 类 / 分页视图 / 模板编写

20 - 浏览量

  • 修改模型 / 列表模板 / 详情模板 / 修改视图
  • 鉴权

21 - 最热文章

  • 重构视图 / 修改模板及测试

22 - 搜索文章

  • 搜索逻辑 / get 和 post 的区别 / Q对象
  • 面包屑组件 / 搜索框

23 - 文章目录

  • 文章中的目录
  • 任意位置的目录

24 - 评论

  • 创建评论 app / 编写评论模型
  • get_object_or_404() / 日期显示及管道符

25 - 课间休息

  • 进阶内容介绍

26 - 基于类的视图

  • 类视图简介 / 类视图与函数视图
  • 通用视图 / 动态过滤 / 在类视图中添加上下文
  • 混入类 / 详情页、编辑页视图

27 - 文章栏目

  • 编写栏目模型 / 在列表中显示栏目
  • 添加测试数据 / 重写文章列表 / 更新MTV

28 - 文章标签

  • 安装 Django-taggit
  • 修改模型 / 修改发表视图
  • 标签过滤

29 - 文章标题图

  • 用 Pillow 处理图片 / 模板与测试

30 - 富文本编辑器

  • 安装 Django-ckeditor
  • 在后台使用 ckeditor / 代码高亮
  • 在前台使用 ckeditor / 宽度自适应

31 - 四个小功能

  • 回到顶部浮动按钮 / 矢量图标 / 页脚沉底 / 粘性侧边栏

32 - 多级评论

  • 安装 Django-mptt
  • 理解树形结构 / 前端渲染 / 遍历树 / 加载 Modal
  • Ajax 提交表单

33 - 消息通知

  • 安装 django-notifications
  • 消息通知用法简介
  • UI 表现 / 理解已读与未读

34 - 锚点定位

  • 理解锚点
  • html 拼接 / 视图拼接 / 流动的数据 / 三元运算符

35 - 第三方登录

  • 本地登录 / 美化模板
  • GitHub 登录 / allauth 配置项

36 - 自动化测试

  • 第一个测试 / 暴露 bug 的方法 / 运行单元测试 / 修复 bug
  • 对视图的测试 / Selenium

37 - 日志记录

  • 日志的组成
  • 日志配置示例 / 复杂示例
  • 日志分割 / 自定义日志

38 - 模板过滤器和标签

  • 注册过滤器和标签
  • 更人性化的时间 / 简单标签 / 包含标签

39 - 点赞功能

  • 实现逻辑的探讨 / LocalStorage 介绍
  • JS 与 Ajax / 利用调试接口

40 - 将项目部署到云服务器

  • 配置服务器
  • 远程连接 / 代码部署 / Nginx 配置 / Gunicorn 配置
  • 解决遗留问题 / 后期运维 / 域名及优化

41 - 期末总结

  • 接下来学什么 / 写在最后

42 - 小功能集合贴

  • 快捷导航 / 页面定位

43 - 读者常见问题

联系方式

一个人的学习是孤单的。欢迎扫码 Django交流QQ群(107143175)、博主微信(dusai0523),和大家一起进步吧!

教程快照

代码片段:


博客首页片段:


博客详情页片段:

代码使用说明

确认你的电脑已经正确安装 Python 3.4 以上的版本。

下载项目后,在命令行中进入项目目录,并创建虚拟环境:

python -m venv env

运行虚拟环境(Windows环境):

env\Scripts\activate.bat

或(Linux环境):

source env/bin/activate

自动安装所有依赖项:

pip install -r requirements.txt

然后进行数据迁移:

python manage.py migrate

最后运行测试服务器:

python manage.py runserver

项目就运行起来了。

其他说明

数据库文件db.sqlite3以及媒体文件夹media中的内容是方便读者查看示例效果而存在的。

master版本管理员账号:dusai 密码:adminpassword

如果你想清除所有数据及媒体文件,将它们直接删除,并运行:

python manage.py createsuperuser

即可重新创建管理员账号。

About

Django搭建博客教程

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%

AltStyle によって変換されたページ (->オリジナル) /