前言
前言
是的,你应该开始阅读本书了。
如果读者已经通过《跟老齐学Python:轻松入门》这本书完成了Python入门,那么接下来就要用Python做一些实际项目了,做什么呢?可以做的东西真不少,比如数据统计、爬虫、机器学习、人工智能等,当然还有不可或缺的Web开发。
本书就是要带领读者:
? 学习Django;
? 完成一个项目;
? 边做项目边学知识。
因此,本书按照完成一个项目从易到难的顺序,以项目为主线逐渐展开对Django的学习。Django是一种在Web开发中应用非常广泛的开发框架,它能够让程序员非常快捷地建设一个网站,并且支持网站开发中各种复杂的业务。如果需要快速建设一个网站,并且希望后期还能通过迭代开发实现网站功能和性能的提升,那么Django是一个不错的选择。
Django的官方网站中有不少内容完备的文档,当然,这种完备不是针对初学者而言的。对于初学者来说,也许官方文档太简要了,因此本书的作用就是将初学者领入Django开发的大门,并引导读者熟悉使用Django官方文档。当读者阅读并练习完本书的项目后,就能够使用官方文档进行开发了,本书的目的也就达到了。
本书从始至终贯穿着一个项目实践,将开发实战中常用的Django知识串联起来,因此它不像课本那样按部就班地把每个知识点都罗列出来,而是根据项目需要,将技能融汇在实战之中。此外,如果仅从开发实践的角度学习Django,难免会出现就问题而解决问题的现象,缺少系统和深入的学习。为此,每节中均配有“知识点”,用以扩展或者系统化有关知识,特别是在“文档导读”中会向读者提供有关网络资料,试图让读者知其然并知其所以然。
在项目进行中,读者可能会遇到暂时无法理解的部分,不要纠结于一时之惑,而要跟着项目继续进行下去,或许到后面就能理解前面的内容了——“发展是硬道理”。
如果正在阅读本书的你是Web开发的初学者,此前没有做过任何网站开发,那么笔者特别建议遵循如下学习方法。
? 严格按照本书要求,将所有代码都认真敲过。不要复制代码(本书提供的源代码,仅仅是一个参考),要自己一个字母一个字母地敲进去。
? 将自己的调试结果与本书所示结果进行对照,看看是否实现了预期的功能。
? 在调试不能通过时,首先要认真检查自己的代码,包括但不限于拼写问题、缩进问题等,若还不能解决,可通过Google搜索该异常(错误),请相信,你的错误别人也同样遇到过。
? 本书支持网站www.itdiffer.com和QQ群(26913719)也是读者学习的助手。
? 本书提示读者阅读的官方文档,一定要认真阅读。
? 本书实际上是一个Django项目,项目中包含了多个应用。如果读者按照本书的要求,遍就实现了应用的功能,那只能说明本书描述无误且你的阅读能力尚可,并不代表你已经掌握了什么。只有当你把刚刚调试通过的应用删除,然后完全靠自己的记忆和理解,同样实现了该应用的功能,才能说明你掌握了相关知识技能。再次强调,要理解相关内容,就必须多重复几遍。
因为本书是以“项目为主线”的,所以不会面面俱到地将Django的所有内容介绍一遍,而是根据项目的功能需要,选择性地使用和介绍有关内容。对于具体功能的实现,书中所给出的代码也非写法,读者可以使用其他更好的方式实现。
在实际的Web开发项目中,除使用Django框架外,还会用到HTML、CSS、JavaScript等知识,从而做出一个看起来有点设计感的页面。虽然说“人不可貌相”,但使用Django做出一个漂亮的前端,还是能够让人感觉很舒服的。因此,书中也涉及一些前端内容,读者在阅读时,如果缺少相关知识,可以实时补充。当然,前端知识并不是学习本书所的,因为凭借读者的聪明才智和无所不包的网络,掌握应付本书所需要的前端知识是非常容易的。
读者可以在GitHub上(https://github.com/qiwsir/DjangoPracticeProject)获得本书的所有代码,这些代码是终结果,希望不会给读者的学习带来不便。
感谢为本书的面市提供帮助的编辑们,感谢我的妻子在本书编写过程中提供的支持。
齐 伟
2017年8月
轻松注册成为博文视点社区用户(www.broadview.com.cn),扫码直达本书页面。
? 提交勘误:您对书中内容的修改意见可在 提交勘误 处提交,若被采纳,将获赠博文视点社区积分(在您购买电子书时,积分可用来抵扣相应金额)。
? 交流互动:在页面下方 读者评论 处留下您的疑问或观点,与我们和其他读者一同学习交流。
页面入口:http://www.broadview.com.cn/32572
导语摘要
Django是Python语言的一种应用广泛的用于开发网站的框架。本书以一个网站实例为主线,贯穿始终,以实战的方式讲述Django框架的应用以及相关的网站开发知识。内容不仅涵盖Django相关内容,还包括网站开发中常用的前端框架如bootstrap等。随着本书中的学习,*终即可完成一个功能完善、界面友好的网站项目。
作者简介
江湖名号:老齐。Github名称是qiwsir,个人网页www.itdiffer.com。喜欢Python语言,不仅将它用于工作中,还愿意帮助更多人学习Python。
目录
目录
第1章 简单的博客系统1
1.1 Django起步1
1.1.1 Django简介1
1.1.2 安装Django3
1.1.3 创建项目4
1.1.4 创建应用6
1.1.5 网站配置11
1.1.6 知识点12
1.2 编写博客的数据模型类12
1.2.1 数据模型类13
1.2.2 发布博客文章17
1.2.3 知识点21
1.3 显示博客信息23
1.3.1 显示文章标题24
1.3.2 查看文章内容28
1.3.3 知识点32
第2章 用户管理35
2.1 自定义模板和静态文件位置35
2.1.1 自定义模板位置36
2.1.2 自定义静态文件位置36
2.1.3 通用静态文件和基础模板37
2.1.4 重置管理后台模板40
2.1.5 知识点42
2.2 用户登录43
2.2.1 创建应用44
2.2.2 理解表单类45
2.2.3 登录的视图函数47
2.2.4 登录的前端界面49
2.2.5 知识点53
2.3 用内置方法实现登录和退出54
2.3.1 内置的登录方法55
2.3.2 判断用户是否登录58
2.3.3 内置的退出方法59
2.3.4 知识点60
2.4 用户注册62
2.4.1 简单注册62
2.4.2 增加注册内容65
2.4.3 管理新增的注册内容70
2.4.4 知识点71
2.5 关于密码的操作72
2.5.1 修改密码73
2.5.2 重置密码78
2.5.3 利用第三方应用重置密码84
2.5.4 知识点87
2.6 维护个人信息88
2.6.1 个人信息的数据模型类和表单类88
2.6.2 展示个人信息90
2.6.3 编辑个人信息93
2.6.4 上传和裁剪头像图片97
2.6.5 优化头像上传功能105
2.6.6 对个人信息进行管理107
2.6.7 知识点108
第3章 文章管理和展示110
3.1 管理文章栏目110
3.1.1 设置栏目110
3.1.2 编辑栏目118
3.1.3 删除栏目120
3.1.4 知识点122
3.2 发布和显示文章125
3.2.1 简单的文章发布126
3.2.2 使用Markdown131
3.2.3 文章标题列表133
3.2.4 知识点140
3.3 删除和修改文章141
3.3.1 删除142
3.3.2 修改143
3.3.3 设置分页功能147
3.3.4 知识点149
3.4 文章展示151
3.4.1 新写文章标题列表151
3.4.2 重新编写“查看文章”功能155
3.4.3 知识点156
第4章 拓展网站功能158
4.1 梳理已有功能158
4.1.1 修改导航栏158
4.1.2 修改登录和注册后的跳转159
4.1.3 知识点161
4.2 查看作者全部文章161
4.2.1 查看某作者的文章列表162
4.2.2 知识点165
4.3 为文章点赞167
4.3.1 修改数据模型类167
4.3.2 编写视图函数168
4.3.3 修改模板文件169
4.3.4 知识点172
4.4 文章的阅读次数173
4.4.1 安装Redis174
4.4.2 在Python中使用Redis175
4.4.3 记录阅读次数176
4.4.4 显示“热”文章177
4.4.5 知识点179
4.5 文章的评论功能180
4.5.1 数据模型类和表单类180
4.5.2 实现评论功能181
4.5.3 知识点184
4.6 多样化显示185
4.6.1 统计文章总数186
4.6.2 发布的文章188
4.6.3 评论多的文章189
4.6.4 自定义模板选择器192
4.6.5 知识点193
4.7 管理和应用文章标签195
4.7.1 管理文章标签195
4.7.2 发布文章时选择标签200
4.7.3 在文章中显示文章标签202
4.7.4 推荐相似文章202
4.7.5 知识点204
第5章 收集和展示图片206
5.1 收集网络图片206
5.1.1 创建图片相关类207
5.1.2 收集和管理图片210
5.1.3 完善图片管理功能214
5.1.4 知识点218
5.2 展示图片219
5.2.1 瀑布流方式展示图片219
5.2.2 查看图片的详细信息223
5.2.3 知识点224
第6章 中场休整226
第7章 创建在线学习应用227
7.1 基于类的视图227
7.1.1 简类视图228
7.1.2 读取数据230
7.1.3 初步了解Mixin232
7.1.4 知识点233
7.2 管理课程标题234
7.2.1 判断用户是否登录235
7.2.2 创建课程237
7.2.3 删除课程239
7.2.4 知识点243
7.3 发布和学习课程内容245
7.3.1 课程内容的数据模型246
7.3.2 课程内容的表单类249
7.3.3 课程内容的视图250
7.3.4 查看课程内容252
7.3.5 注册学习课程257
7.3.6 知识点260
第8章 结束和开始262
内容摘要
Django是Python语言的一种应用广泛的用于开发网站的框架。本书以一个网站实例为主线,贯穿始终,以实战的方式讲述Django框架的应用以及相关的网站开发知识。内容不仅涵盖Django相关内容,还包括网站开发中常用的前端框架如bootstrap等。随着本书中的学习,*终即可完成一个功能完善、界面友好的网站项目。
主编推荐
江湖名号:老齐。Github名称是qiwsir,个人网页www.itdiffer.com。喜欢Python语言,不仅将它用于工作中,还愿意帮助更多人学习Python。
以下为对购买帮助不大的评价