Skip to content

Commit 6ed9e60

Browse files
committed
更新了Django部分的文档
1 parent 5f5ebe4 commit 6ed9e60

17 files changed

+143
-99
lines changed

Day36-40/NoSQL入门.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,6 @@
44

55

66

7-
### 主流NoSQL数据库
8-
9-
10-
117
### Redis概述
128

139
1. Redis的安装和启动

Day41-55/01.快速上手.md

Lines changed: 57 additions & 67 deletions
Large diffs are not rendered by default.

Day41-55/02.深入模型.md

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,15 @@
1-
## Django 2实战-02:深入模型
1+
## Django实战(02) - 深入模型
22

3-
在上一个章节中,我们提到了Django是基于MVC架构的Web框架,MVC架构追求的是“模型”和“视图的解耦合。所谓“模型”说得更直白一些就是数据,所以通常也被称作“数据模型”。在实际的项目中,数据模型通常通过数据库实现持久化操作,而关系型数据库在很长一段时间都是持久化的首选方案,下面我们以MySQL为例来说明如何使用关系型数据库来实现持久化操作。
3+
在上一个章节中,我们提到了Django是基于MVC架构的Web框架,MVC架构追求的是“模型”和“视图”的解耦合。所谓“模型”说得更直白一些就是数据,所以通常也被称作“数据模型”。在实际的项目中,数据模型通常通过数据库实现持久化操作,而关系型数据库在很长一段时间都是持久化的首选方案,下面我们以MySQL为例来说明如何使用关系型数据库来实现持久化操作。
44

55
### 配置关系型数据库MySQL
66

77
我们继续来完善上一个章节中的OA项目,首先从配置项目使用的数据库开始。
88

9-
1. 进入oa文件夹,修改项目的settings.py文件,首先将我们之前创建的应用hrs添加已安装的项目中,然后配置MySQL作为持久化方案。
9+
1. 修改项目的settings.py文件,首先将我们之前创建的应用hrs添加已安装的项目中,然后配置MySQL作为持久化方案。
1010

1111
```Shell
12-
(venv)$ cd oa
13-
(venv)$ vim settings.py
12+
(venv)$ cd oa/settings.py
1413
```
1514

1615
```Python
@@ -97,8 +96,7 @@
9796
4. 可以看到,Django帮助我们创建了10张表,这些都是使用Django框架需要的东西,稍后我们就会用到这些表。除此之外,我们还应该为我们自己的应用创建数据模型。如果要在hrs应用中实现对部门和员工的管理,我们可以创建如下所示的数据模型。
9897

9998
```Shell
100-
(venv)$ cd hrs
101-
(venv)$ vim models.py
99+
(venv)$ vim hrs/models.py
102100
```
103101

104102
```Python
@@ -137,7 +135,6 @@
137135
5. 通过模型创建数据表。
138136

139137
```Shell
140-
(venv)$ cd ..
141138
(venv)$ python manage.py makemigrations hrs
142139
Migrations for 'hrs':
143140
hrs/migrations/0001_initial.py
@@ -186,8 +183,7 @@
186183
3. 注册模型类。
187184

188185
```Shell
189-
(venv)$ cd hrs
190-
(venv)$ vim admin.py
186+
(venv)$ vim hrs/admin.py
191187
```
192188

193189
```Python
@@ -293,7 +289,6 @@
293289
在了解了Django提供的模型管理平台之后,我们来看看如何从代码层面完成对模型的CRUD(Create / Read / Update / Delete)操作。我们可以通过manage.py开启Shell交互式环境,然后使用Django内置的ORM框架对模型进行CRUD操作。
294290

295291
```Shell
296-
(venv)$ cd ..
297292
(venv)$ python manage.py shell
298293
Python 3.6.4 (v3.6.4:d48ecebad5, Dec 18 2017, 21:07:28)
299294
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
@@ -353,6 +348,9 @@ Type "help", "copyright", "credits" or "license" for more information.
353348
>>>
354349
>>> Dept.objects.get(no__exact=30)
355350
<Dept: 运维1部>
351+
>>>
352+
>>> Dept.objects.filter(no=10).first()
353+
<Dept: 研发1部>
356354
```
357355

358356
排序数据。

Day41-55/03.静态资源和Ajax请求.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
## Django 2实战-03:静态资源和Ajax请求
1+
## Django实战(03) - 静态资源和Ajax请求
22

33
基于前面两个章节讲解的知识,我们已经可以使用Django框架来实现Web应用的开发了。接下来我们就尝试实现一个投票应用,具体的需求是用户进入系统首先来到“登录页”;登录成功后可以查看到“学科介绍”页面,该页面显示了一个学校所开设的所有学科;通过点击某个学科,可以进入“讲师详情”页面,该页面展示了该学科所有讲师的详细情况,可以在该页面上给讲师点击“好评”或“差评”;对于未注册的用户,可以在登录页点击“新用户注册”进入“注册页”完成用户注册,注册成功或失败都会获得相应的提示信息,注册成功后会返回“登录页”。
44

Day41-55/04.表单的应用.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
## Django 2实战-04:表单的应用
1+
## Django实战(04) - 表单的应用
22

33
我们继续来完成上一章节中的项目,实现“用户注册”和“用户登录”的功能。Django框架中提供了对表单的封装,而且提供了多种不同的使用方式。
44

README.md

Lines changed: 30 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -164,18 +164,18 @@
164164

165165
#### Day15 - [图像和文档处理](./Day01-15/Day15/图像和办公文档处理.md)
166166

167-
- 用Pillow处理图片
168-
- 读写Word文档
169-
- 读写Excel文件
170-
- 生成PDF文件
167+
- 用Pillow处理图片 - 图片读写 / 图片合成 / 几何变换 / 色彩转换 / 滤镜效果
168+
- 读写Word文档 - 文本内容的处理 / 段落 / 页眉和页脚 / 样式的处理
169+
- 读写Excel文件 - xlrd模块 / xlwt模块
170+
- 生成PDF文件 - pypdf2模块 / reportlab模块
171171

172172
### Day16~Day20 - [Python语言进阶 ](./Day16-20/Python语言进阶.md)
173173

174174
- 常用数据结构
175-
- 函数的高级用法
176-
- 面向对象高级知识
177-
- 迭代器和生成器
178-
- 并发和异步编程
175+
- 函数的高级用法 - “一等公民” / 高阶函数 / Lambda函数 / 作用域和闭包 / 装饰器
176+
- 面向对象高级知识 - “三大支柱” / 类与类之间的关系 / 垃圾回收 / 魔术属性和方法 / 混入 / 元类 / 面向对象设计原则 / GoF设计模式
177+
- 迭代器和生成器 - 相关魔术方法 / 创建生成器的两种方式 /
178+
- 并发和异步编程 - 多线程 / 多进程 / 异步IO / async和await
179179

180180
### Day21~30 - [Web前端入门](./Day21-30/Web前端概述.md)
181181

@@ -185,6 +185,7 @@
185185
- jQuery入门和提高
186186
- Vue.js入门
187187
- Element的使用
188+
- Bootstrap的使用
188189

189190
### Day31~35 - [玩转Linux操作系统](./Day31-35/玩转Linux操作系统.md)
190191

@@ -204,26 +205,41 @@
204205
- 关系型数据库概述
205206
- MySQL的安装和使用
206207
- SQL的使用
207-
- DDL
208-
- DML
209-
- DQL
210-
- DCL
208+
- DDL - 数据定义语言 - create / drop / alter
209+
- DML - 数据操作语言 - insert / delete / update / select
210+
- DCL - 数据控制语言 - grant / revoke
211+
- 相关知识
212+
- 范式理论 - 设计二维表的指导思想
213+
- 数据完整性
214+
- 数据一致性
211215
- 在Python中操作MySQL
212-
- MySQL高级知识
213216
- [NoSQL入门](./Day36-40/NoSQL入门.md)
214217
- NoSQL概述
215-
- 主流NoSQL数据库
216218
- Redis概述
217219
- Mongo概述
218220

219221
### Day41~55 - [实战Django](./Day41-55)
220222

221223
#### Day41 - [快速上手](./Day41-55/01.快速上手.md)
222224

225+
- Web应用工作原理和HTTP协议
226+
- Django框架概述
227+
- 5分钟快速上手
228+
- 使用视图模板
229+
223230
#### Day42 - [深入模型](./Day41-55/02.深入模型.md)
224231

232+
- 关系型数据库配置
233+
- 管理后台的使用
234+
- 使用ORM完成对模型的CRUD操作
235+
- Django模型最佳实践
236+
- 模型定义参考
237+
225238
#### Day43 - [静态资源和Ajax请求](./Day41-55/03.静态资源和Ajax请求.md)
226239

240+
- 加载静态资源
241+
- 用Ajax请求获取数据
242+
227243
#### Day44 - [表单的应用](./Day41-55/04.表单的应用.md)
228244

229245
#### Day45 - [Cookie和会话](./Day41-55/05.Cookie和会话.md)

res/pycharm-comm-django-1.png

65.2 KB
Loading

res/pycharm-comm-django-2.png

145 KB
Loading

res/pycharm-comm-django-3.png

140 KB
Loading

res/pycharm-comm-django-4.png

62.7 KB
Loading

res/pycharm-comm-django-5.png

126 KB
Loading

res/pycharm-comm-django-6.png

139 KB
Loading

res/pycharm-comm-django-7.png

105 KB
Loading

res/pycharm-comm-django-8.png

236 KB
Loading

res/pycharm-prof-django-2.png

250 KB
Loading

res/pycharm-prof-django-3.png

109 KB
Loading

玩转PyCharm.md

Lines changed: 45 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,4 +46,48 @@ PyCharm是由JetBrains公司开发的提供给Python专业的开发者的一个
4646

4747
![](./res/pycharm-workspace.png)
4848

49-
在工作窗口的右键菜单中可以找到“Run ...”和“Debug ...”菜单项,通过这两个菜单项我们就可以运行和调试我们的代码啦。建议关注一下菜单栏中的“Code”、“Refactor”和“Tools”菜单,这里面为编写Python代码提供了很多有用的帮助,我们在后面也会陆续为大家介绍这些功能。
49+
在工作窗口的右键菜单中可以找到“Run ...”和“Debug ...”菜单项,通过这两个菜单项我们就可以运行和调试我们的代码啦。建议关注一下菜单栏中的“Code”、“Refactor”和“Tools”菜单,这里面为编写Python代码提供了很多有用的帮助。
50+
51+
### 创建Django项目
52+
53+
#### 专业版
54+
55+
PyCharm专业版提供了对Django、Flask、Google App Engine、web2py等Python Web框架以及SQL、UML、前端语言和框架、远程调试、虚拟化部署等功能的支持,如果使用PyCharm专业版,在创建项目时可以直接选择创建Django项目并设置模板语言以及放置模板页的文件夹。
56+
57+
![](./res/pycharm-prof-django-3.png)
58+
59+
创建好项目之后,打开终端输入`pip list`命令,可以看到项目所需的依赖项已经安装好了,而且可以直接点击屏幕右上方的运行或调试按钮来直接运行Django项目。
60+
61+
![](./res/pycharm-prof-django-2.png)
62+
63+
#### 社区版
64+
65+
PyCharm社区版只能创建Python项目,如果项目中需要Django的支持,可以自行安装依赖库并创建Django项目。
66+
67+
![](./res/pycharm-comm-django-1.png)
68+
69+
创建好Python项目之后,可以打开屏幕下方的终端(Terminal),并通过`pip install`安装Django项目的依赖项。
70+
71+
![](./res/pycharm-comm-django-2.png)
72+
73+
当然也可以在项目的设置菜单中找到解释器配置,并选择要添加的依赖项。
74+
75+
![](./res/pycharm-comm-django-7.png)
76+
77+
![](./res/pycharm-comm-django-8.png)
78+
79+
接下来可以在终端中输入`django-amdin startproject`指令来创建项目。
80+
81+
![](./res/pycharm-comm-django-3.png)
82+
83+
如果要运行项目,可以在终端中输入`python manage.py runserver`启动测试服务器。当然,也可以点击屏幕右上方的“Add Configuration”按钮,进入如下所示的配置界面,并点击窗口左上角的“+”来添加一个运行配置。
84+
85+
![](./res/pycharm-comm-django-4.png)
86+
87+
在配置窗口的右侧,指定要执行的脚本路径(Django项目的manage.py文件的位置)和运行参数(runserver)。
88+
89+
![](./res/pycharm-comm-django-5.png)
90+
91+
注意到窗口的右上角了吗?现在可以点击运行或调试按钮来启动测试服务器运行项目了。
92+
93+
![](./res/pycharm-comm-django-6.png)

0 commit comments

Comments
 (0)