开始建立!Tango使用Django,你需要确保你有你需要安装在您的计算机上的一切,你对你的开发环境有充分的了解。本章将引导您完成你所需要的,哪些是你需要知道的。
对于本教程,您需要以下关键的软件。
提供的操作系统为了配置您的环境学习如何使用命令行解释器(CLI)是非常重要的。通过本教程中,你将与CLI常规交互。如果你已经熟悉使用命令行界面,您可以直接跳至Installing the Software部分。
基于unix的操作系统都使用了相似终端。后代,衍生物和UNIX的克隆,包括苹果的OS X和许多可用的Linux发行上市。所有这些操作系统包含一组核心的命令帮助你浏览文件系统和启动程序,不需要任何图形界面。本节你应该熟悉键盘命令。
注意:
本教程的重点是对基于UNIX或UNIX衍生操作系统的用户。虽然Python和Django的可以在基于Windows的环境中运行,许多我们在本书中使用的命令是基于UNIX的终端。这些命令可以然而,在Windows中使用的图形用户界面,在Windows命令提示符下使用相关命令,或使用Windows PowerShell提供像类似于UNIX终端的命令行复制。
当启动一个新的终端实例,你通常会看到类似:
sibu:~ leif$
这就是所谓的提示,表示当系统等待执行你的每一个命令。根据您所使用的操作系统,你看到提示各不相同,但都长得一般非常相似。在上面的例子中,有三个关键信息来观察:
美元符号($
)通常表明用户是一个标准的用户帐户。相反,一个散列符号(#
)可以用来表示用户登录根特权。任何符号是目前用于表示计算机正在等待您的输入。
打开一个终端窗口,看看你的提示是什么样子的。
当你使用终端时,重要的是要知道你是在文件系统中的什么位置。要找出你在哪里,你可以发出命令pwd。这将显示您当前的工作目录。例如,检查下面的例子终端的交互。
Last login: Mon Sep 23 11:35:44 on ttys003
sibu:~ leif$ pwd
/Users/leif
sibu:~ leif$
您可以看到,在这个例子中当前的工作目录是:`/Users/leif` 您还会注意到,提示表明我现在的工作目录是`~`。这是由于波浪号(`~`)代表您的主目录。在任何基于UNIX的文件系统的基本目录是根目录。根目录的路径是用一个正斜杠(/)。 如果你不是在你的主目录下可以改变目录(cd)到您的主目录通过发出以下命令。
$ cd ~
让我们创建一个名为`code`的目录。因此,使用使目录命令(`mkdir`),如下所示。
$ mkdir code
要移动到新创建的`code`目录下,输入`cd code`。如果你检查你当前的工作目录,你会发现你会在`〜/code/`。这也可能反映在你的提示。注意在下面的例子中,当前的工作目录打印后`sibu`的计算机名称。 >注意: >每当我们提到,我们将参考你的code目录。
sibu:~ leif$ mkdir code
sibu:~ leif$ cd code
sibu:code leif$
sibu:code leif$ pwd
/Users/leif/code
在目录中列出所有文件,你可以发出的命令`ls`。您还可以看到隐藏的文件或目录-如果您有任何-你可以命令`ls -a`,`a`表示`all`。如果你`cd`回到您的主目录(`cd ~`)然后发出`ls`,你会发现你的主目录中有名为`code`存在。 要了解多一点关于什么是您的目录中,发出`ls -l`命令。这将提供文件的更详细的列表以及它是否是一个目录或不是(行开始用`d`表示)。
sibu:~ leif$ cd ~
sibu:~ leif$ ls -l
drwxr-xr-x 36 leif staff 1224 23 Sep 10:42 code
输出还包含相关联的目录中的权限的信息,谁创建(`leif`)、组(`staff`)、尺寸、文件在被修改的日期/时间、名称。 您可能还会发现它能够对用户终端中编辑文件很有用。许多编辑器,你可以使用 - 其中有些可能已经在您的计算机上安装。[nano](http://www.nano-editor.org/)编辑的例子是一个简单的编辑器——不像[vi](http://en.wikipedia.org/wiki/Vi)需要花一些时间去学习。以下是常用的UNIX命令的列表,你会发现有用的。 ## 核心命令 所有基于UNIX的操作系统,配备了一系列的内置命令 - 与大多数只专注于文件管理。您将使用最频繁的命令列表如下,每个与他们做一个简短的说明,以及如何使用它们。
注释
目录和文件用句点或点开始可以被认为是隐藏文件在Windows中的等价物。点文件通常不可见的目录,浏览工具,并且通常用于配置文件。您可以使用ls命令通过添加-a切换到命令的末尾,给命令ls-a
查看隐藏文件。
默认情况下,Microsoft Windows没有安装Python。这意味着,你不必担心离开现有的版本中;从头开始安装应该很好地工作。您可以从Python官方网站下载64位或32位版本的Python。如果你不知道哪一个下载,你可以决定,如果你的电脑是32位或64位通过查看所提供的微软网站上的说明。
一旦安装完成,你应该有一个Python的工作版本准备就绪。默认情况下,Python的2.7.5安装文件夹C:\Python27
。我们建议把它作为保留路径。
安装完成后,打开一个命令提示符并输入python
命令。如果你看到Python提示,安装成功。然而,在某些情况下,安装程序可能不会将你的Windows安装正确的PATH
环境变量。这将导致python
命令未被发现。在Windows 7,你可以纠正这一点通过执行以下:
这应该让您的Python安装完全工作。Windows XP,稍微不同的指令,Windows 8 installationsthis也是如此。
现在安装了Python,我们需要确认安装成功。要做到这一点,我们需要检查到PYTHONPATH
环境变量是否设置正确。PYTHONPATH
环境为Python解释器提供额外的Python包和模块的位置添加额外的功能基本的Python安装。没有正确设置PYTHONPATH
环境,我们将无法安装和使用Django !
首先,让我们验证PYTHONPATH
环境变量的存在。根据您选择的安装方法,这可能会或可能不会已经为你做。基于unix的操作系统上,在一个终端发出以下命令。
$ echo $PYTHONPATH
在基于Windows的计算机上,打开命令提示符,然后发出以下。
$ echo %PYTHONPATH%
如果所有的作品,然后你应该看到输出看起来类似于下面的例子。在基于Windows的计算机,你会明显看到一个Windows路径,最有可能从C盘发起。
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages:
这是指向你的Python安装的site-packages
目录,其中附加的Python包和模块的存储位置。如果你看到一条路径,你可以继续本教程的下一个部分。但是,如果你看不到任何东西,你需要做的工作是一点点地找出路径。在Windows安装,这应该是一个简单的练习:site-packages
位于你的Python安装目录下的lib
文件夹中。例如,如果你的Python安装路径为C:\Python27
, site-packages
会在C:\Python27\Lib\site-packages\
。
基于UNIX的操作系统,需要花费一点工作去找到你的site-package
的安装路径。要做到这一点,启动了Python解释器。以下终端会话演示了你应该发出的命令。
$ python
Python 2.7.5 (v2.7.5:ab05e7dd2788, May 13 2013, 13:18:45)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import site
>>> print site.getsitepackages()[0]
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages'
>>> quit()
调用site.getsitepackages()
返回一个指向额外的Python包和模块存储的路径列表。
第一个通常会返回的路径site-packages
目录 - 不断变化的根据您的安装可能需要在列表索引位置。如果你收到一个错误,指出getsitepackages()
不存在在这个site
模块中,验证你运行Python的正确版本。版本2.7.5应该包括这个功能。以前版本的语言不包括此功能。
执行site.getsitepackages()[0]
显示结果的字符串是你安装的site-package
目录的路径。获得的路径,我们现在需要将其添加到您的配置。在基于UNIX或UNIX衍生操作系统,再次编辑您的.bashrc
文件,添加以下到文件底部。
export PYTHONPATH=$PYTHONPATH:<PATH_TO_SITE-PACKAGES>
用你的site-package
目录的路径替换<PATH_TO_SITE-PACKAGES>
。保存文件,并退出和再次重新打开终端实例。
在基于Windows的计算机上,你必须按照部分显示的指令,弹出环境变量设置对话框。添加PYTHONPATH
变量的值被设置为你的site-package
文件夹,通常是C:\Python27\Lib\site-package\
。
安装和配置您的开发环境是任何项目的一个非常重要的组成部分。虽然可以单独安装Django等Python包,这可能会导致大量的问题和麻烦。例如,你将如何与其他开发人员共享您的配置?你将如何在新机器上配置相同的环境吗?你如何升级到最新版本的包吗?使用包管理器清除的大部分麻烦参与建立和配置您的环境。它还将确保您安装包和使用是正确的Python版本,随着安装任何其他包依赖于您想要安装的。
在这本书中,我们将使用Pip。Pip是一个用户友好的封装在Setuptools Python包管理器。由于Pip依赖于setuptools的,我们必须确保这两个都安装在您的计算机上。
首先,我们应该从Python包的官方网站下载Setuptools 。你可以下载压缩在.tar.gz
文件的包。使用你最喜欢的文件提取程序,提取文件。他们都应该出现在一个目录setuptools-1.1.6
-其中1.1.6
代表Setuptools的版本号。在终端实例中,那么你可以换入目录并执行脚本ez_setup.py
如下图所示。
$ cd setuptools-1.1.6
$ sudo python ez_setup.py
在上面的示例中,我们也使用sudo
允许成为整个系统权限。第二个命令是安装Setuptools。确认安装成功,您应该能够看到类似如下所示的输出。
Finished processing dependencies for setuptools==1.1.6
当然,1.1.6替换为你安装Setuptools的版本。如果你看到这一行,你就可以继续安装Pip。这是一个简单的过程,可以用一个简单的命令完成。从你的终端,输入以下。
$ sudo easy_install pip
这个命令应该下载并安装Pip,再与系统访问。你应该可以看到如下输出,验证Pip已经成功安装。
Finished processing dependencies for pip
看到这个输出,您应该能够从您的终端启动Pip。启动Pip,只需要输入pip
。相反,不可识别的命令错误,你应该看到的命令和开关Pip接受的列表。如果你看到这一点,你已经准备好继续前进!
注释
与基于windows电脑,遵循相同的基本流程。然而,你不需要输入sudo
命令。
一旦Python包管理器Pip成功安装到您的计算机上,安装Django是容易的。打开一个命令提示符或终端窗口,并发出以下命令。
$ pip install -U django==1.7
如果您使用的是基于UNIX的操作系统,并接收有关权限不足的抱怨,你将需要运行使用sudo
命令提升权限的命令。如果是这样的话,则必须运行以下命令。
$ sudo pip install -U django==1.7
包管理器将Django下载并安装在正确的位置。完成后,应该成功安装Django。请注意,如果你不包括==1.7
,则不同版本的Django可以安装。
构建Rango的过程中,我们将上传和处理图像。这意味着我们将需要Pillow(Python成像库)的支持。发出以下命令安装这个包。
$ pip install pillow
如果需要再次使用sudo
。
值得注意的是,额外的Python包可以很容易地下载使用相同的方式。Python包索引提供了一个清单可以通过Pip的所有包。
您可以运行下面的命令查看要安装的包的列表。
$ pip list
你也可以安装的包的列表的格式,可以与其他开发人员共享。为此发出以下命令。
$ pip freeze > requirements.txt
如果您检查requirements.txt
使用命令more
,less
或cat
,你会看到同样的信息,但是有稍微不同的格式。然后,requirements.txt
可以使用以下命令来安装相同的设置。这对于设置环境在另一台计算机,非常有用的。
$ pip install -r requirements.txt
虽然不是绝对必要的,一个好的基于python集成开发环境(IDE)可以在开发过程中是非常有用的。一些存在,也许JetBrains公司’* PyCharm*和PyDev(Eclipse IDE的一个插件)脱颖而出为流行的选择。Python维基提供了一个最新的Python IDE的列表。
研究哪一个更适合你,要知道,有些可能需要您购买许可证。理想情况下,你要选择一个IDE支持与Django的集成。PyCharm和PyDev中都支持Django的集成开箱即用 - 虽然你必须将IDE指向的Python,你正在使用的版本。
我们几乎所有的设置去!然而,在我们继续之前,它值得指出的是,虽然这种配置是好的,但是也有一些缺点。如果你有一个需要一个不同的版本运行其他Python应用程序?或者你想切换到新版本的Django,但仍想保持1.7 Django项目吗?
解决方案是使用虚拟环境。虚拟环境允许Python和其相关的软件包多次安装的和谐存在。这是现在公认的方法来配置一个Python安装。
他们很容易设置,一旦你安装了Pip,你知道正确的命令。您需要安装两个额外的软件包。
$ pip install virtualenv
$ pip install virtualenvwrapper
第一个包为您提供了创建虚拟环境的基础设施。
看到一个非魔法介绍了Pip和VIRTUALENV
为Python初学者由杰米·马修斯有关使用的virtualenv的详细信息。然而,仅使用virtualenv本身是相当复杂的。第二包提供了一个封装在virtualenv包的功能,使生活变得更加简单。
如果您使用的是基于linux / unix操作系统,然后使用封装你需要调用从命令行shell脚本如下:
$ source virtualenvwrapper.sh
有一个好主意就是将它添加到您的bash/profile
脚本中。所以,你没有必要每一次运行都使用virtualenvironments。
然而,如果您使用的是windows,那么安装virtualenvwrapper-win包:
$ pip install virtualenvwrapper-win
现在你应该准备好创建一个虚拟的环境:
$ mkvirtualenv rango
你可以用lsvirtualenv
列表创建的虚拟环境,你可以激活虚拟环境如下:
$ workon rango
(rango)$
你的提示将显示变化和当前的虚拟环境,例如 rango。现在在这个环境中您可以安装的所有包你喜欢,与你的标准或其他environements没有干涉。尝试pip-list
,看看你没有的Django或Pillow安装在您的虚拟环境。你现在可以使用pip安装它们,这样它们存在于你的虚拟环境。
后面我们去部署应用程序时,我们将经历类似的过程看到章Deploying your Application和设置PythonAnywhere虚拟环境。
我们还应该指出的是,当你开发的代码,你应该总是一个版本控制库中的存储你的代码如SVN或GIT。现在我们不会经历这个,我们可以停留在Django应用程序开发。我们有提供GIT的速成课。我们强烈建议您为您自己的项目设置GIT存储库。这样做可以节省你的灾难。
熟悉你的环境,试试下面的练习。
原文: http://www.tangowithdjango.com/book17/chapters/requirements.html