Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Python-100-Days
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
huangkq
Python-100-Days
Commits
6ed9e604
Commit
6ed9e604
authored
May 02, 2019
by
jackfrued
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更新了Django部分的文档
parent
5f5ebe4b
Changes
17
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
87 additions
and
33 deletions
+87
-33
NoSQL入门.md
Day36-40/NoSQL入门.md
+0
-4
01.快速上手.md
Day41-55/01.快速上手.md
+0
-0
02.深入模型.md
Day41-55/02.深入模型.md
+9
-11
03.静态资源和Ajax请求.md
Day41-55/03.静态资源和Ajax请求.md
+1
-1
04.表单的应用.md
Day41-55/04.表单的应用.md
+1
-1
README.md
README.md
+30
-14
pycharm-comm-django-1.png
res/pycharm-comm-django-1.png
+0
-0
pycharm-comm-django-2.png
res/pycharm-comm-django-2.png
+0
-0
pycharm-comm-django-3.png
res/pycharm-comm-django-3.png
+0
-0
pycharm-comm-django-4.png
res/pycharm-comm-django-4.png
+0
-0
pycharm-comm-django-5.png
res/pycharm-comm-django-5.png
+0
-0
pycharm-comm-django-6.png
res/pycharm-comm-django-6.png
+0
-0
pycharm-comm-django-7.png
res/pycharm-comm-django-7.png
+0
-0
pycharm-comm-django-8.png
res/pycharm-comm-django-8.png
+0
-0
pycharm-prof-django-2.png
res/pycharm-prof-django-2.png
+0
-0
pycharm-prof-django-3.png
res/pycharm-prof-django-3.png
+0
-0
玩转PyCharm.md
玩转PyCharm.md
+46
-2
No files found.
Day36-40/NoSQL入门.md
View file @
6ed9e604
...
...
@@ -4,10 +4,6 @@
### 主流NoSQL数据库
### Redis概述
1.
Redis的安装和启动
...
...
Day41-55/01.快速上手.md
View file @
6ed9e604
This diff is collapsed.
Click to expand it.
Day41-55/02.深入模型.md
View file @
6ed9e604
## Django
2实战-02:
深入模型
## Django
实战(02) -
深入模型
在上一个章节中,我们提到了Django是基于MVC架构的Web框架,MVC架构追求的是“模型”和“视图的解耦合。所谓“模型”说得更直白一些就是数据,所以通常也被称作“数据模型”。在实际的项目中,数据模型通常通过数据库实现持久化操作,而关系型数据库在很长一段时间都是持久化的首选方案,下面我们以MySQL为例来说明如何使用关系型数据库来实现持久化操作。
在上一个章节中,我们提到了Django是基于MVC架构的Web框架,MVC架构追求的是“模型”和“视图
”
的解耦合。所谓“模型”说得更直白一些就是数据,所以通常也被称作“数据模型”。在实际的项目中,数据模型通常通过数据库实现持久化操作,而关系型数据库在很长一段时间都是持久化的首选方案,下面我们以MySQL为例来说明如何使用关系型数据库来实现持久化操作。
### 配置关系型数据库MySQL
我们继续来完善上一个章节中的OA项目,首先从配置项目使用的数据库开始。
1.
进入oa文件夹,
修改项目的settings.py文件,首先将我们之前创建的应用hrs添加已安装的项目中,然后配置MySQL作为持久化方案。
1.
修改项目的settings.py文件,首先将我们之前创建的应用hrs添加已安装的项目中,然后配置MySQL作为持久化方案。
```
Shell
(venv)$ cd oa
(venv)$ vim settings.py
(venv)$ cd oa/settings.py
```
```Python
...
...
@@ -97,8 +96,7 @@
4. 可以看到,Django帮助我们创建了10张表,这些都是使用Django框架需要的东西,稍后我们就会用到这些表。除此之外,我们还应该为我们自己的应用创建数据模型。如果要在hrs应用中实现对部门和员工的管理,我们可以创建如下所示的数据模型。
```Shell
(venv)$ cd hrs
(venv)$ vim models.py
(venv)$ vim hrs/models.py
```
```Python
...
...
@@ -137,7 +135,6 @@
5. 通过模型创建数据表。
```Shell
(venv)$ cd ..
(venv)$ python manage.py makemigrations hrs
Migrations for 'hrs':
hrs/migrations/0001_initial.py
...
...
@@ -186,8 +183,7 @@
3. 注册模型类。
```Shell
(venv)$ cd hrs
(venv)$ vim admin.py
(venv)$ vim hrs/admin.py
```
```Python
...
...
@@ -293,7 +289,6 @@
在了解了Django提供的模型管理平台之后,我们来看看如何从代码层面完成对模型的CRUD(Create / Read / Update / Delete)操作。我们可以通过manage.py开启Shell交互式环境,然后使用Django内置的ORM框架对模型进行CRUD操作。
```
Shell
(venv)$ cd ..
(venv)$ python manage.py shell
Python 3.6.4 (v3.6.4:d48ecebad5, Dec 18 2017, 21:07:28)
[
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.
>>>
>>> Dept.objects.get(no__exact=30)
<Dept:
运维
1
部
>
>>>
>>> Dept.objects.filter(no=10).first()
<Dept:
研发
1
部
>
```
排序数据。
...
...
Day41-55/03.静态资源和Ajax请求.md
View file @
6ed9e604
## Django
2实战-03:
静态资源和Ajax请求
## Django
实战(03) -
静态资源和Ajax请求
基于前面两个章节讲解的知识,我们已经可以使用Django框架来实现Web应用的开发了。接下来我们就尝试实现一个投票应用,具体的需求是用户进入系统首先来到“登录页”;登录成功后可以查看到“学科介绍”页面,该页面显示了一个学校所开设的所有学科;通过点击某个学科,可以进入“讲师详情”页面,该页面展示了该学科所有讲师的详细情况,可以在该页面上给讲师点击“好评”或“差评”;对于未注册的用户,可以在登录页点击“新用户注册”进入“注册页”完成用户注册,注册成功或失败都会获得相应的提示信息,注册成功后会返回“登录页”。
...
...
Day41-55/04.表单的应用.md
View file @
6ed9e604
## Django
2实战-04:
表单的应用
## Django
实战(04) -
表单的应用
我们继续来完成上一章节中的项目,实现“用户注册”和“用户登录”的功能。Django框架中提供了对表单的封装,而且提供了多种不同的使用方式。
...
...
README.md
View file @
6ed9e604
...
...
@@ -164,18 +164,18 @@
#### Day15 - [图像和文档处理](./Day01-15/Day15/图像和办公文档处理.md)
-
用Pillow处理图片
-
读写Word文档
-
读写Excel文件
-
生成PDF文件
-
用Pillow处理图片
- 图片读写 / 图片合成 / 几何变换 / 色彩转换 / 滤镜效果
-
读写Word文档
- 文本内容的处理 / 段落 / 页眉和页脚 / 样式的处理
-
读写Excel文件
- xlrd模块 / xlwt模块
-
生成PDF文件
- pypdf2模块 / reportlab模块
### Day16~Day20 - [Python语言进阶 ](./Day16-20/Python语言进阶.md)
-
常用数据结构
-
函数的高级用法
-
面向对象高级知识
-
迭代器和生成器
-
并发和异步编程
-
函数的高级用法
- “一等公民” / 高阶函数 / Lambda函数 / 作用域和闭包 / 装饰器
-
面向对象高级知识
- “三大支柱” / 类与类之间的关系 / 垃圾回收 / 魔术属性和方法 / 混入 / 元类 / 面向对象设计原则 / GoF设计模式
-
迭代器和生成器
- 相关魔术方法 / 创建生成器的两种方式 /
-
并发和异步编程
- 多线程 / 多进程 / 异步IO / async和await
### Day21~30 - [Web前端入门](./Day21-30/Web前端概述.md)
...
...
@@ -185,6 +185,7 @@
-
jQuery入门和提高
-
Vue.js入门
-
Element的使用
-
Bootstrap的使用
### Day31~35 - [玩转Linux操作系统](./Day31-35/玩转Linux操作系统.md)
...
...
@@ -204,15 +205,16 @@
-
关系型数据库概述
-
MySQL的安装和使用
-
SQL的使用
-
DDL
-
DML
-
DQL
-
DCL
-
DDL - 数据定义语言 - create / drop / alter
-
DML - 数据操作语言 - insert / delete / update / select
-
DCL - 数据控制语言 - grant / revoke
-
相关知识
-
范式理论 - 设计二维表的指导思想
-
数据完整性
-
数据一致性
-
在Python中操作MySQL
-
MySQL高级知识
-
[
NoSQL入门
](
./Day36-40/NoSQL入门.md
)
-
NoSQL概述
-
主流NoSQL数据库
-
Redis概述
-
Mongo概述
...
...
@@ -220,10 +222,24 @@
#### Day41 - [快速上手](./Day41-55/01.快速上手.md)
-
Web应用工作原理和HTTP协议
-
Django框架概述
-
5分钟快速上手
-
使用视图模板
#### Day42 - [深入模型](./Day41-55/02.深入模型.md)
-
关系型数据库配置
-
管理后台的使用
-
使用ORM完成对模型的CRUD操作
-
Django模型最佳实践
-
模型定义参考
#### Day43 - [静态资源和Ajax请求](./Day41-55/03.静态资源和Ajax请求.md)
-
加载静态资源
-
用Ajax请求获取数据
#### Day44 - [表单的应用](./Day41-55/04.表单的应用.md)
#### Day45 - [Cookie和会话](./Day41-55/05.Cookie和会话.md)
...
...
res/pycharm-comm-django-1.png
0 → 100644
View file @
6ed9e604
65.2 KB
res/pycharm-comm-django-2.png
0 → 100644
View file @
6ed9e604
145 KB
res/pycharm-comm-django-3.png
0 → 100644
View file @
6ed9e604
140 KB
res/pycharm-comm-django-4.png
0 → 100644
View file @
6ed9e604
62.7 KB
res/pycharm-comm-django-5.png
0 → 100644
View file @
6ed9e604
126 KB
res/pycharm-comm-django-6.png
0 → 100644
View file @
6ed9e604
139 KB
res/pycharm-comm-django-7.png
0 → 100644
View file @
6ed9e604
105 KB
res/pycharm-comm-django-8.png
0 → 100644
View file @
6ed9e604
236 KB
res/pycharm-prof-django-2.png
0 → 100644
View file @
6ed9e604
250 KB
res/pycharm-prof-django-3.png
0 → 100644
View file @
6ed9e604
109 KB
玩转PyCharm.md
View file @
6ed9e604
...
...
@@ -46,4 +46,48 @@ PyCharm是由JetBrains公司开发的提供给Python专业的开发者的一个

在工作窗口的右键菜单中可以找到“Run ...”和“Debug ...”菜单项,通过这两个菜单项我们就可以运行和调试我们的代码啦。建议关注一下菜单栏中的“Code”、“Refactor”和“Tools”菜单,这里面为编写Python代码提供了很多有用的帮助,我们在后面也会陆续为大家介绍这些功能。
\ No newline at end of file
在工作窗口的右键菜单中可以找到“Run ...”和“Debug ...”菜单项,通过这两个菜单项我们就可以运行和调试我们的代码啦。建议关注一下菜单栏中的“Code”、“Refactor”和“Tools”菜单,这里面为编写Python代码提供了很多有用的帮助。
### 创建Django项目
#### 专业版
PyCharm专业版提供了对Django、Flask、Google App Engine、web2py等Python Web框架以及SQL、UML、前端语言和框架、远程调试、虚拟化部署等功能的支持,如果使用PyCharm专业版,在创建项目时可以直接选择创建Django项目并设置模板语言以及放置模板页的文件夹。

创建好项目之后,打开终端输入
`pip list`
命令,可以看到项目所需的依赖项已经安装好了,而且可以直接点击屏幕右上方的运行或调试按钮来直接运行Django项目。

#### 社区版
PyCharm社区版只能创建Python项目,如果项目中需要Django的支持,可以自行安装依赖库并创建Django项目。

创建好Python项目之后,可以打开屏幕下方的终端(Terminal),并通过
`pip install`
安装Django项目的依赖项。

当然也可以在项目的设置菜单中找到解释器配置,并选择要添加的依赖项。


接下来可以在终端中输入
`django-amdin startproject`
指令来创建项目。

如果要运行项目,可以在终端中输入
`python manage.py runserver`
启动测试服务器。当然,也可以点击屏幕右上方的“Add Configuration”按钮,进入如下所示的配置界面,并点击窗口左上角的“+”来添加一个运行配置。

在配置窗口的右侧,指定要执行的脚本路径(Django项目的manage.py文件的位置)和运行参数(runserver)。

注意到窗口的右上角了吗?现在可以点击运行或调试按钮来启动测试服务器运行项目了。

\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment