Skip to content

Commit 1a52b2a

Browse files
committed
更新 Django 翻译文章
1 parent 8153fb0 commit 1a52b2a

9 files changed

+1841
-7
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,140 @@
1+
2+
## Virtualenv
3+
4+
### 介绍
5+
6+
在使用 `Python` 开发的过程中,工程一多,难免会碰到不同的工程依赖不同版本的库的问题;亦或者是在开发过程中不想让物理环境里充斥各种各样的库,引发未来的依赖灾难。
7+
8+
因此,我们需要对于不同的工程使用不同的虚拟环境来保持开发环境以及宿主环境的清洁。而 `virtualenv`就是一个可以帮助我们管理不同 `Python` 环境的绝好工具。`virtualenv` 可以在系统中建立多个不同并且相互不干扰的虚拟环境。
9+
10+
### 安装
11+
12+
```
13+
pip3 install virtualenv
14+
```
15+
16+
这样就成功了
17+
18+
### 使用
19+
20+
#### 创建
21+
22+
假如我们想要用`scrapy`去爬取某个网站的信息,我们不想再宿主环境总安装scrapy以及requests这些包,那我们就可以使用virtualenv了。
23+
24+
假设我们把这个虚拟环境放在`~/workspaces/project_env/spider/`目录下
25+
26+
```
27+
virtualenv ~/workspaces/project_env/spider/
28+
```
29+
30+
这样虚拟环境就创建好了,我们可以看到在这个目录下油三个目录被建立
31+
32+
* bin:包含一些在这个虚拟环境中可用的命令,以及开启虚拟环境的脚本 `activate`
33+
* include:包含虚拟环境中的头文件,包括 `Python` 的头文件
34+
* lib:这里面就是一些依赖库
35+
36+
#### 激活
37+
38+
```
39+
source ~/workspaces/project_env/spider/bin/activate
40+
```
41+
42+
此时我们就已经在虚拟环境中了
43+
44+
可以安装一下requests这个模块
45+
46+
```
47+
pip install requests
48+
```
49+
50+
可以看到很快就成功
51+
52+
#### 退出虚拟环境
53+
54+
```
55+
deactivate
56+
```
57+
58+
## virtualenvwrapper
59+
60+
### 介绍
61+
62+
我们刚才了解了`virtualenv`,我觉得比较麻烦,每次开启虚拟环境之前要去虚拟环境所在目录下的 `bin` 目录下 `source`一下 `activate`,这就需要我们记住每个虚拟环境所在的目录。
63+
64+
一种可行的解决方案是,将所有的虚拟环境目录全都集中起来,比如放到 `~/virtualenvs/`,并对不同的虚拟环境使用不同的目录来管理。`virtualenvwrapper` 正是这样做的。并且,它还省去了每次开启虚拟环境时候的 `source` 操作,使得虚拟环境更加好用。
65+
66+
### 安装
67+
68+
```
69+
pip install virtualwrapper
70+
```
71+
72+
这样我们就安装好了可以管理虚拟环境的神器
73+
74+
### 使用
75+
76+
#### 配置
77+
78+
首先需要对`virtualenvwrapper`进行配置:
79+
80+
* 需要指定一个环境变量,叫做`WORKON_HOME`,它是用来存放各种虚拟环境目录的目录
81+
* 需要export vitualenvwrapper这个模块存放的位置
82+
* 需要运行一下它的初始化工具 `virtualenvwrapper.sh`,可通过`which virtualenvwrapper.sh`查看位置,我的在`/usr/local/bin/`
83+
84+
由于每次都需要执行这两步操作,我们可以将其写入终端的配置文件中。
85+
86+
如果使用 `bash`,则添加到 `~/.bashrc` 中
87+
88+
如果使用 `zsh`,则添加到 `~/.zshrc` 中
89+
90+
这样每次启动终端的时候都会自动运行,终端启动之后 `virtualenvwrapper` 就可以用啦
91+
92+
```
93+
export WORKON_HOME='~/Workspaces/Envs'
94+
95+
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3
96+
97+
source /usr/local/bin/virtualenvwrapper.sh
98+
```
99+
100+
101+
**创建虚拟机**
102+
103+
```
104+
mkvirtualenv env
105+
```
106+
107+
创建虚拟环境完成后,会自动切换到创建的虚拟环境中
108+
109+
当然也可以指定虚拟机的 python 版本
110+
111+
```
112+
mkvirtualenv env -p C:\python27\python.exe
113+
```
114+
115+
**列出虚拟环境列表**
116+
117+
```
118+
workon 或者 lsvirtualenv
119+
```
120+
121+
**启动/切换虚拟环境**
122+
123+
使用 workon [virtual-name] 即可切换到对应的虚拟环境
124+
125+
```
126+
workon [虚拟环境名称]
127+
```
128+
129+
130+
**删除虚拟环境**
131+
132+
```
133+
rmvirtualenv [虚拟环境名称]
134+
```
135+
136+
**离开虚拟环境,和 virutalenv 一样的命令**
137+
138+
```
139+
deactivate
140+
```

Article/advanced/advanced.md

+1
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
* [使用Python虚拟环境](/Article/advanced/使用Python虚拟环境.md)
2+
* [Mac中使用virtualenv和virtualenvwrapper](/Article/advanced/Mac中使用virtualenv和virtualenvwrapper.md)

Article/advanced/使用Python虚拟环境.md

+8-7
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@ python 的虚拟环境可以为一个 python 项目提供独立的解释环境
77
**安装 virtualenv**
88

99
```
10-
$ pip install virtualenv
10+
$ pip install virtualenv
1111
```
1212

13+
1314
**配置 pip 安装第三方库的镜像源地址**
1415

1516
我们都知道,国内连接国外的服务器都会比较慢,有时候设置下载经常出现超时的情况。这时可以尝试使用国内优秀的[豆瓣源](https://pypi.douban.com/simple)镜像来安装。
@@ -26,16 +27,16 @@ pip install -i https://pypi.douban.com/simple virtualenv
2627

2728
```
2829
virtualenv env
29-
```
30+
```
3031

3132

32-
当然在创建 env 的时候可以选择 Python 解释器,例如:
33+
当然在创建 env 的时候可以选择 Python 解释器,例如:
3334

3435
```
3536
virtualenv -p /usr/local/bin/python3 venv
3637
```
3738

38-
默认情况下,虚拟环境会依赖系统环境中的 site packages,就是说系统中已经安装好的第三方 package 也会安装在虚拟环境中,如果不想依赖这些 package,那么可以加上参数 `--no-site-packages` 建立虚拟环境
39+
默认情况下,虚拟环境会依赖系统环境中的 site packages,就是说系统中已经安装好的第三方 package 也会安装在虚拟环境中,如果不想依赖这些 package,那么可以加上参数 `--no-site-packages` 建立虚拟环境
3940

4041
```
4142
virtualenv --no-site-packages [虚拟环境名称]
@@ -56,11 +57,11 @@ source ./bin/activate
5657
deactivate
5758
```
5859

59-
如果想删除虚拟环境,那么直接运行`rm -rf venv/`命令即可。
60+
如果想删除虚拟环境,那么直接运行`rm -rf venv/`命令即可。
6061

6162
**在虚拟环境安装 Python packages**
6263

63-
Virtualenv 附带有 pip 安装工具,因此需要安装的 packages 可以直接运行:
64+
Virtualenv 附带有 pip 安装工具,因此需要安装的 packages 可以直接运行:
6465

6566
```
6667
pip install [套件名称]
@@ -116,7 +117,7 @@ workon [虚拟环境名称]
116117
```
117118

118119

119-
**删除虚拟环境**
120+
**删除虚拟环境**
120121

121122
```
122123
rmvirtualenv [虚拟环境名称]

Article/django/Django.md

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Django
2+
3+
Python 下有许多款不同的 Web 框架。Django 是重量级选手中最有代表性的一位。许多成功的网站和 APP 都基于 Django。
4+
5+
如果对自己的基础有点信息的童鞋,可以尝试通过国外的 ![Django 博客从搭建到部署系列教程](https://simpleisbetterthancomplex.com/series/2017/09/04/a-complete-beginners-guide-to-django-part-1.html) 进行入门,这个教程讲的非常的详细,而且还有很多有趣的配图。不过可能因为墙的原因,很多人会访问不到,就算访问到了,也因为是英语的,不会进行耐心的阅读学习。因此我打算翻译这个教程。
6+
7+
* [一个完整的初学者指南Django-part1](/Article/django/一个完整的初学者指南Django-part1.md)
8+
* [一个完整的初学者指南Django-part2](/Article/django/一个完整的初学者指南Django-part2.md)
9+
10+
后面经一个朋友说,这个教程已经有人在翻译了,因此我也不翻译了,不过感觉我的翻译还是挺好的,因为不是直译的,是通过了解后,用自己的语言再次表达出来。
11+
12+
这里有上面这个教程翻译计划的 [Github](https://github.com/wzhbingo/django-beginners-guide) 以及 [博客](https://www.cloudcrossing.xyz/post/20/),觉得哪个看得舒服,就选哪个进行学习。

0 commit comments

Comments
 (0)