自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 两个不错的django免费入门学习资源

近期在群里看到一些群友分享的 django 学习资料,感觉质量非常不错,关键是这些学习资料还都是免费的!因此在这里分享给大家,希望好的东西能让更多的人知道,也算对得起这些作者的辛勤付出。第一个是由我们 Django学习小组 的群友 阿航 贡献的一系列 django2.0 入门学习视频。这个视频从 0 开始,作者计划把 django 开发中涉及的大部分基础内容都讲一遍,并且还有项目实战。目前已经...

2018-04-07 18:33:35 3024

原创 Django 博客开发教程 16 - 统计文章阅读量

如何精确地记录一篇文章的阅读量是一个比较复杂的问题,不过对于我们的博客来说,没有必要记录的那么精确。因此我们使用一种简单但有效的方式来记录博客文章的阅读量:文章每被浏览一次,则其阅读量 +1,即所谓的文章页面 PV(Page View)数。虽然简单粗暴,但却高效实用。增加新字段为了记录文章的浏览量,需要在文章的数据库表中新增一个用于存储阅读量的字段。因此给博客文章的模型新增一个 views 字段:b

2017-05-22 11:46:02 951

原创 Django 博客开发教程 15 - 使用 Fabric 自动化部署

在 使用 Nginx 和 Gunicorn 部署 Django 博客 中,我们通过手工方式将代码部署到了服务器。整个过程涉及到十几条命令,输了 N 个字符。一旦我们本地的代码有更新,整个过程又得重复来一遍,这将变得非常繁琐。使用 Fabric 可以在服务器中自动执行命令。因为整个代码部署过程都是相同的,只要我们用 Fabric 写好部署脚本,以后就可以通过运行脚本自动完成部署了。安装 FabricF

2017-05-22 11:44:22 685

原创 Django 博客开发教程 13 - 已知小问题修正

在模型中指定排序为了让文章(Post)按发布时间逆序排列,即最新发表的文章排在文章列表的最前面,我们对返回的文章列表进行了排序,即各个视图函数中都有类似于 Post.objects.all().order_by('-created_time') 这样的代码,这导致了很多重复。因为只要是返回的文章列表,基本都是逆序排列的,因此我们可以在 Post 模型中指定 Post 的自然排序方式。Django 允

2017-05-21 14:00:11 741

原创 Django 博客开发教程 12 - 评论

创建评论应用相对来说,评论其实是另外一个比较独立的功能。Django 提倡,如果功能相对比较独立的话,最好是创建一个应用,把相应的功能代码写到这个应用里。我们的第一个应用叫 blog,它里面放了展示博客文章列表和细节等相关功能的代码。而这里我们再创建一个应用,名为 comments,这里面将存放和评论功能相关的代码。首先激活虚拟环境,然后输入如下命令创建一个新的应用:python manage.py

2017-05-21 13:59:00 1628

原创 Django 博客开发教程 11 - 分类与归档

侧边栏已经正确地显示了最新文章列表、归档、分类等信息。现在来完善归档和分类功能,当用户点击归档下的某个日期或者分类下的某个分类时,跳转到文章列表页面,显示该日期或者分类下的全部文章。归档页面要显示某个归档日期下的文章列表,思路和显示主页文章列表是一样的,回顾一下主页视图的代码:blog/views.pydef index(request): post_list = Post.objects.

2017-05-21 13:57:43 1615

原创 Django 博客开发教程 10 - 页面侧边栏:使用自定义模板标签

我们的博客侧边栏有四项内容:最新文章、归档、分类和标签云。这些内容相对比较固定,且在各个页面都会显示,如果像文章列表或者文章详情一样,从视图函数中获取然后传递给模板,则每个页面对应的视图函数里都要写一段获取这些内容的代码,这会导致很多重复代码。更好的解决方案是直接在模板中获取,为此,我们使用 Django 的一个新技术:自定义模板标签来完成任务。使用模板标签的解决思路我们前面已经接触过一些 Djan

2017-05-21 13:56:51 2477 1

原创 9 - 支持 Markdown 语法和代码高亮

为了让博客文章具有良好的排版,显示更加丰富的格式,我们使用 Markdown 语法来书写我们的博文。Markdown 是一种 HTML 文本标记语言,只要遵循它约定的语法格式,Markdown 的渲染器就能够把我们写的文章转换为标准的 HTML 文档,从而让我们的文章呈现更加丰富的格式,例如标题、列表、代码块等等 HTML 元素。由于 Markdown 语法简单直观,不用超过 5 分钟就可以掌握常用

2017-05-20 11:55:52 821

原创 8 - 博客文章详情页

首页展示的是所有文章的列表,当用户看到感兴趣的文章时,他点击文章的标题或者继续阅读的按钮,应该跳转到文章的详情页面来阅读文章的详细内容。现在让我们来开发博客的详情页面,有了前面的基础,开发流程都是一样的了:首先配置 URL,即把相关的 URL 和视图函数绑定在一起,然后实现视图函数,编写模板并让视图函数渲染模板。设计文章详情页的 URL回顾一下我们首页视图的 URL,在 blog\urls.py 文

2017-05-20 11:55:00 2469

原创 7 - 在 Django Admin 后台发布文章

在此之前我们完成了 Django 博客首页视图的编写,我们希望首页展示发布的博客文章列表,但是它却抱怨:暂时还没有发布的文章!如它所言,我们确实还没有发布任何文章,本节我们将使用 Django 自带的 Admin 后台来发布我们的博客文章。创建 Admin 后台管理员账户要想进入Django Admin 后台,首先需要创建一个超级管理员账户。我们在 让 Django 完成翻译:迁移数据库 中已经创建

2017-05-20 11:54:20 1060 1

原创 6 - 真正的 Django 博客首页视图

在此之前我们已经编写了 Blog 的首页视图,并且配置了 URL 和模板,让 Django 能够正确地处理 HTTP 请求并返回合适的 HTTP 响应。不过我们仅仅在首页返回了一句话:欢迎访问我的博客。这是个 Hello World 级别的视图函数,我们需要编写真正的首页视图函数,当用户访问我们的博客首页时,他将看到我们发表的博客文章列表,就像 演示项目 里展示的这样。首页视图函数上一节我们阐明了

2017-05-20 11:53:29 1190

原创 5 - Django 博客首页视图

Django 处理 HTTP 请求Web 应用的交互过程其实就是 HTTP 请求与响应的过程。无论是在 PC 端还是移动端,我们通常使用浏览器来上网,上网流程大致来说是这样的:我们打开浏览器,在地址栏输入想访问的网址,比如 http://zmrenwu.com/(当然你也可能从收藏夹里直接打开网站,但本质上都是一样的)。浏览器知道我们想要访问哪个网址后,它在后台帮我们做了很多事情。主要就是把我们

2017-05-20 11:52:41 578

原创 4 - 让 Django 完成翻译:迁移数据库

我们已经编写了博客数据库模型的代码,但那还只是 Python 代码而已,Django 还没有把它翻译成数据库语言,因此实际上这些数据库表还没有真正的在数据库中创建。迁移数据库为了让 Django 完成翻译,创建好这些数据库表,我们再一次请出我的工程管理助手 manage.py。激活虚拟环境,切换到 manage.py 文件所在的目录下,分别运行 python manage.py makemigrat

2017-05-19 11:57:25 554

原创 3 - 创建 Django 博客的数据库模型

设计博客的数据库表结构博客最主要的功能就是展示我们写的文章,它需要从某个地方获取博客文章数据才能把文章展示出来,通常来说这个地方就是数据库。我们把写好的文章永久地保存在数据库里,当用户访问我们的博客时,Django 就去数据库里把这些数据取出来展现给用户。博客的文章应该含有标题、正文、作者、发表时间等数据。一个更加现代化的博客文章还希望它有分类、标签、评论等。为了更好地存储这些数据,我们需要合理地组

2017-05-19 11:56:31 616

原创 2 - 建立 Django 博客应用

建立博客应用我们已经建立了 Django 博客的项目工程,并且成功地运行了它。不过到目前为止这一切都还只是 Django 为我们创建的项目初始内容,Django 不可能为我们初始化生成博客代码,这些功能性代码都得由我们自己编写。Django 鼓励我们把自己编写的代码组织到应用(Application)里,并且最好是一个应用只提供一种功能。例如我们要开发的 Django 博客,相关的代码都放在 blo

2017-05-19 11:55:37 504

原创 1 - 搭建开发环境

本教程使用的开发环境本教程写作时开发环境的系统平台为 Windows 10 (64 位),Python 版本为 3.5.2 (64 位),Django 版本为 1.10.6。建议尽可能地与教程的开发环境保持一致(尤其是 Python 与 Django 版本),避免不必要的麻烦。推荐的 Python 版本为 Python 3.4 或以上,Django 版本号必须为 Django 1.10.x。注意:本

2017-05-19 11:54:12 624

原创 0 - Django 博客教程:前言

Django 是使用 Python 编写的一个开源 Web 框架,可以用它来快速搭建一个高性能的网站。 Django makes it easier to build better Web apps more quickly and with less code. Django 让你以更快的速度、更少的代码、更轻松的方式搭建更好的 Web 应用。本教程将带你使用 Django 快速开

2017-05-19 11:50:23 593

原创 Django 入门学习规划与资料推荐

这篇文章总结了我一年多来的 django 学习经验,推荐一些迅速帮助你入门 django 学习的高质量学习资料和教程,让你在一到两个月内快速掌握基本的 django 开发技术,并且能够使用 django 发开一些小项目,例如一个博客网站或者论坛网站。django 官方入门教程对于正准备学习 django 开发的新人,我唯一推荐的教程就是这个 django 官方入门教程。这个教程分 7 个部分,带领你

2017-05-02 16:43:47 6703 2

原创 通过网络图片小爬虫对比Python中单线程与多线(进)程的效率

批评 Python 的人通常都会说 Python 的多线程编程太困难了,众所周知的全局解释器锁(Global Interpreter Lock,或称 GIL)使得多个线程的 Python 代码无法同时运行。因此,如果你并非 Python 开发者,而是从其他语言如 C++ 或者 Java 转过来的话,你会觉得 Python 的多线程模块并没有以你期望的方式工作。但必须澄清的是,只要以一些特定的方式,我

2016-09-27 11:41:18 445

原创 使用 django-blog-zinnia 搭建个人博客

目前网上搭建个人博客的方案很多,虽然使用诸如 Wordpress ( PHP )、Hexo ( Node.js ) 等可以方便快速地搭建一款功能齐全的高性能个人博客,但是本文将尝试一种更为小众化的方案 —— 一款基于 django-blog-zinnia ( Python ) 的个人博客应用。django-blog-zinnia 虽然小巧,但是具备了个人博客应用的全部基础功能,且具有很高的拓展性,

2016-09-07 12:12:23 4017 3

原创 Django 学习小组:博客开发实战第五周教程 —— 实现评论功能

通过前四周的时间我们开发了一个简单的个人 Blog,前几期教程地址:第一周:Django 学习小组:博客开发实战第一周教程 —— 编写博客的 Model 和首页面第二周:Django 学习小组:博客开发实战第二周教程 —— 博客详情页面和分类页面第三周:Django 学习小组:博客开发实战第三周教程 —— 文章列表分页和代码语法高亮番外:Django 学习小组:基于类的通用视图详解(一)第四周:Dj

2016-06-25 10:04:15 2898 1

原创 Django 学习小组:博客开发实战第四周——标签云与文章归档

通过前四周的时间我们开发了一个简单的个人 Blog,教程地址:第一周:Django 学习小组:博客开发实战第一周教程 —— 编写博客的 Model 和首页面第二周:Django 学习小组:博客开发实战第二周教程 —— 博客详情页面和分类页面第三周:Django 学习小组:博客开发实战第三周教程 —— 文章列表分页和代码语法高亮第四周:Django 学习小组:基于类的通用视图详解(一)本周我们将实现

2016-06-17 17:28:53 2012

原创 Django 学习小组:基于类的通用视图详解(一)

通过三周的时间我们开发了一个简单的个人 Blog,教程地址:第一周:Django 学习小组:博客开发实战第一周教程 —— 编写博客的 Model 和首页面第二周:Django 学习小组:博客开发实战第二周教程 —— 博客详情页面和分类页面第三周:Django 学习小组:博客开发实战第三周教程 —— 文章列表分页和代码语法高亮有朋友反应说对于 Django 的 class-based-view(基于类

2016-06-10 17:00:27 717

原创 Django 学习小组:博客开发实战第三周教程——文章列表分页和代码语法高亮

摘要:前两期教程我们实现了博客的 Model 部分,以及 Blog 的首页视图 IndexView,详情页面 DetailView,以及分类页面 CategoryView,前两期教程链接请戳: Django 学习小组:博客开发实战第一周教程 —— 编写博客的 Model 与首页面 Django 学习小组:博客开发实战第二周教程 —— 博客详情页面和分类页面本周我们将继续完善我们

2016-06-03 15:21:42 1052

原创 Django 学习小组:博客开发实战第二周教程 —— 实现博客详情页面和分类页面

上周我们完成了博客的 Model 部分,以及 Blog 的首页视图 IndexView。本节接上周的文档 Django 学习小组:博客开发实战第一周教程 —— 编写博客的 Model 与首页面,我们继续给博客添加功能,以及改善前面不合理的部分。本教程将带你完成 Blog 的详情页面,即用户点击首页的文章标题或者阅读全文按钮将跳转到文章的详情页面来阅读整篇文章。其次将调整一些目录结构以使其在实践应用中

2016-05-27 14:18:48 2559

原创 Django 学习小组:博客开发实战第一周教程 —— 编写博客的 Model 与首页面

Django学习小组出品:一起来做一个简单的Blog第一周文档(教程) 本节是 django blog 项目的开篇,是 django 学习小组的集体学习成果。django学习小组是由我发起的一个促进 django 新手互相学习、互相帮助的组织。小组在一边学习 django 的同时将一起完成三个项目: 一个简单django blog,用于发布小组每周的学习和开发文档 djang

2016-05-20 16:40:24 9650

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除