Django笔记 —— 基础部分总结
最近在学习Django,打算玩玩网页后台方面的东西,因为一直很好奇但却没怎么接触过。Django对我来说是一个全新的内容,思路想来也是全新的,或许并不能写得很明白,所以大家就凑合着看吧~
本篇笔记(其实我的所有笔记都是),并不会过于详细的讲解。因此如果有大家看不明白的地方,欢迎在我正版博客下留言,有时间的时候我很愿意来这里与大家探讨问题。(当然,不能是简简单单就可以百度到的问题-.-)
我所选用的教材是《The Django Book 2.0》,本节是读完前七章的总结。
0. 本书结构
基础部分:第一到七章,是Django的基础,内容全都需要掌握。
高级部分:第八到十二章,是Django的高级应用,内容大部分依旧需要掌握。
自由阅读部分:第十三到二十章,是Django的各种特性,需要哪部分取决于你的具体应用。
0+. 我的工作环境
| 软件名称 | 版本 | 查看方法 |
| Operating System | Ubuntu 14.10 | Ubuntu机器右上角可以找到“关于这台计算机”,点进去可以看到版本 |
| Python | 2.7.8 | 在终端输入“python --version” |
| Django | 1.8.0.final.0 | 在终端输入"python",然后依次输入"import django"和"django.VERSION" |
| MySQL | 5.6.24 | 在终端输入"mysql --version",看到"Distrib 5.6.24"就对了 |
这里多说一句,大家没有必要一定要和我的版本保持一直,只要大致相同即可。
例如Django版本,现在已经更新到了1.8.3,那么就用这个就好了,和1.8.0应该大体相同。但如果你用的是1.7.x,那你就要去看《The Django Book 2.0》中的代码了,和1.8.x差别还是挺大的。
1. 基础部分知识总结
| 知识点 | 具体内容 |
|
Django安装 (Linux环境) |
1. 在官网下载安装包(名如Django-1.8.3.tar.gz) 2. 解压 tar xzvf Django-*.tar.gz 3. 进入解压出的文件夹 cd Django-* 4. 安装 sudo python setup.py install 4+. 安装目录(参考) /usr/local/lib/python2./dist-packages/Django-1.8-py2..egg/django |
| Django基本命令 |
1. 创建站点 django-admin.py startproject sitename 2. 运行站点(在manage.py所在目录) python manage.py runserver 2+. 默认url地址 http://127.0.0.1:8000/ 3. 站点调试(自动载入站点设置的交互解释器) python manage.py shell 4. 语法检查 python manage.py check |
| 视图和URL配置 |
1. 在views.py中写出视图代码 2. 在urls.py中import视图,并加入对应url 3. 运行站点,在浏览器中进入对应url即可 |
| 模板 |
1. 写出模板代码 2. 在settings.py中,TEMPLATES参数内的 'DIRS' 列表中,加入模板所在目录,例如 './template/' 3. 在视图中import模板,并使用模板 |
| 模型 |
0. 数据库安装(例如MySQL安装) 1. 创建模型对应app python manage.py startapp appname 2. 在models.py中写出模型代码 3. 在settings.py中, DATABASES参数中,设置好数据库,例如 # Database 4. 在settings.py中,INSTALLED_APPS参数中,加入模型,例如 'books', 5. 生成模型的migration python manage.py makemigrations appname 6. 激活模型 python manage.py migrate 7. 在视图中import模型,并使用模型 8. 在admin中注册模型 admin.site.register(modelname) |
| Admin |
1. 同步数据库(synchronise database) python manage.py syncdb 2. 运行站点,进入管理界面 http://127.0.0.1:8000/admin/ |
| 表单 |
1. 做好所需设置(如email设置、CSRF设置) 2. 在forms.py中写出表单代码 3. 在视图中import表单,并使用表单 4. 在模板中实现表单(<form>标签) |
2. 高级部分知识概览
第十一章:通用视图
第十二章:部署Django
3. 自由阅读部分知识概览
第十三章:输出非HTML内容
第十四章:会话、用户和注册
第十五章:缓存机制
第十六章:集成的子框架django.contrib
第十七章:中间件
第十八章:集成已有的数据库和应用
第十九章:国际化
第二十章:安全
做个总结,梳理前面的知识,也方便后面回顾。下一篇,就开始进入高级阶段了——“高级视图和URL配置”。
Django笔记 —— 基础部分总结的更多相关文章
- Web框架——Django笔记
Web框架--Django笔记 MVC和MTV MVC:Model.View.Controller MTV:Model.Template.View Django--MTV 1.创建Django程序 ...
- Django笔记 —— 模板
最近在学习Django,打算玩玩网页后台方面的东西,因为一直很好奇但却没怎么接触过.Django对我来说是一个全新的内容,思路想来也是全新的,或许并不能写得很明白,所以大家就凑合着看吧- 本篇笔记(其 ...
- 老男孩武老师的Django笔记
武老师的 Django 博客笔记 基础篇 https://www.cnblogs.com/wupeiqi/articles/5237704.html 进阶篇 https://www.cnblogs.c ...
- 巩固复习(Django最基础的部分_具体查看官方文档)
Django学习路1 1.脚本不能随便运行,没准 linux 运行完就上不去了 2.pip 在 linux 上 写 pip3 同理 python 写为 python3 3.在 pycharm 上安装库 ...
- jQuery学习笔记 - 基础知识扫盲入门篇
jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...
- Python之路【第十六篇】:Django【基础篇】
Python之路[第十六篇]:Django[基础篇] Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了O ...
- Python开发【第二十一篇】:Web框架之Django【基础】
Python开发[第二十一篇]:Web框架之Django[基础] 猛击这里:http://www.cnblogs.com/wupeiqi/articles/5237704.html Python之 ...
- 小猪猪C++笔记基础篇(五)表达式、语句
小猪猪C++笔记基础篇(五) 关键词:表达式.语句 本章的内容比较简单,基本上没有什么理解上的困难,都是知识上的问题.先开始想要不要写呢,本来是不准备写的,但是既然读了书就要做笔记,还是写一写,毕竟还 ...
- 小猪猪C++笔记基础篇(六)参数传递、函数重载、函数指针、调试帮助
小猪猪C++笔记基础篇(六) ————参数传递.函数重载.函数指针.调试帮助 关键词:参数传递.函数重载.函数指针.调试帮助 因为一些事情以及自己的懒惰,大概有一个星期没有继续读书了,已经不行了,赶紧 ...
随机推荐
- POJ 1423 斯特林
题意:进制问题 分析: 打表,但是要用不能 long long 型,超内存. n! = log_{10}\sqrt{2{\pi}n}*(\frac{n}e)^n 精度要求 #include <c ...
- POJ 2182 Lost Cows 【树状数组+二分】
题目链接:http://poj.org/problem?id=2182 Lost Cows Time Limit: 1000MS Memory Limit: 65536K Total Submis ...
- 关于node-sass安装失败的解决办法
在测试gulp-webapp的时候遇到了 styles 不能被正常编译的问题,究其原因是node-sass没有被正常安装. 根本原因是国内网络的原因. 最终的解决方法是通过淘宝的npm镜像安装node ...
- 【luogu P2590 [ZJOI2008]树的统计】 题解
题目链接:https://www.luogu.org/problemnew/show/P2590 我想学树剖QAQ #include <cstdio> #include <cstri ...
- CodeForces 501B Misha and Changing Handles(STL map)
Misha hacked the Codeforces site. Then he decided to let all the users change their handles. A user ...
- .NET 小程序 wx.getUserInfo(OBJECT) 解密 encryptedData 来获取UnionId
在小程序中通过 wx.getUserInfo 获取用户信息,而UnionId 只有关主了公众号才会返回,不关注公众号想获取UnionId则需要我们从返回的 encryptedData 中解码从而获取U ...
- 配置两台Azure服务器,一台加入另一台的ad域加入不进去的问题
AD服务器 10.0.0.4 数据库服务器 10.0.0.5 将数据库服务器加入到AD域中,需要将Azure的DNS改成10.0.0.4 Copy一下
- 使用 Cordova(PhoneGap)构建Android程序
移动终端开发随着智能手机的普及变得越来越热,什么项目都想移动一把,但反观要去学这些各个终端的控件使用,实属不易,又特别是每个终端的控件及所用语言都各不相同,使得这种学习变得更加困难. 有没有一种简单的 ...
- $CRS_HOME/cdata下大量数字命名的文件,占用空间大
问题现象: <CRS_HOME>/cdata目录下存在大量数字命名的文件,导致文件系统爆满 $ls -alrth /opt/oracle/product/CRS/cdata/crs ...
- iOS 通用缓存:HanekeSwift
iOS 通用缓存:HanekeSwift Haneke 是个采用 Swift 编写的轻量级 iOS 通用缓存.示例: 初始化一个数据缓存: let cache = Cache<NSData> ...