Django 环境搭建

Django 中提供了开发网站经常用到的模块,常见的代码都为你写好了,通过减少重复的代码,Django 使你能够专注于 web 应用上有 趣的关键性的东西。为了达到这个目标,Django 提供了通用Web开发模式的高度抽象,提供了频繁进行的编程作业的快速解决方法,以及为“如何解决问题”提供了清晰明了的约定。Django的理念是DRY(Don't Repeat Yourself)来鼓励快速开发!

让我们一览 Django 全貌

urls.py

网址入口,关联到对应的views.py中的一个函数(或者generic类),访问网址就对应一个函数。

views.py

处理用户发出的请求,从urls.py中对应过来, 通过渲染templates中的网页可以将显示内容,比如登陆后的用户名,用户请求的数据,输出到网页。

models.py

与数据库操作相关,存入或读取数据时用到这个,当然用不到数据库的时候 你可以不使用。

forms.py

表单,用户在浏览器上输入数据提交,对数据的验证工作以及输入框的生成等工作,当然你也可以不使用。

templates 文件夹

views.py 中的函数渲染templates中的Html模板,得到动态内容的网页,当然可以用缓存来提高速度。

admin.py

后台,可以用很少量的代码就拥有一个强大的后台。

settings.py

Django 的设置,配置文件,比如 DEBUG 的开关,静态文件的位置等。

本文最后面讲了如何 使用virtualenv实现多个互不干扰的开发环境。

一. 版本选择

Django 1.5.x 支持 Python 2.6.5 Python 2.7, Python 3.2 和 3.3.

Django 1.6.x 支持 Python 2.6.X, 2.7.X, 3.2.X 和 3.3.X

Django 1.7.x 支持 Python 2.7, 3.2, 3.3, 和 3.4 (注意:Python 2.6 不支持了)

Django 1.8.x 支持 Python 2.7, 3.2, 3.3, 3.4 和 3.5. (长期支持版本 LTS)

Django 1.9.x 支持 Python 2.7, 3.4 和 3.5. 不支持 3.3 了

Django 1.10.x 支持 Python 2.7, 3.4 和 3.5.

Django 1.11.x 支持 Python 2.7, 3.4, 3.5 和 3.6(长期支持版本 LTS) 最后一个支持 Python 2.7 的版本

Django 2.0.x 支持 Python 3.4, 3.5 和 3.6 (注意,不再支持 Python 2)

更详细的可以参考这里,一般来说,选择长期支持版本比较好。

使用最新版本的问题就是,可能要用到的一些第三方插件没有及时更新,无法正常使用这些三方包。

如果是学习,可以选择目前的 Django 1.8.x 来进行,遇到问题也容易找到答案。

如果是正式启动的新项目,建议用 Django 1.11.x,毕竟 Django 1.9 以后 admin 界面更漂亮些。

二. 安装 Django

推荐:在Cloud Studio中进行Django开发

新手目前还有一个月免费云主机,体验在线开发和部署的乐趣。

  • step1:访问Cloud Studio,注册/登录账户。
  • step2:在右侧的运行环境菜单选择:"PHP + Python + Java 三种语言环境"
  • step3: 在终端上安装Django,启动项目,如图

image.png

注意:以下方法中任何一种方法安装都可,不用每个都试一次。

另外 建议自行安装 bpython,这样在用起来会爽很多。进入终端的时候输入 bpython 可以有提示。当然也可以选择用 ipython

2.1. 用 pip 来安装

2.1.1 需要先安装pip

(1). ubuntu:

`sudo` `apt-get ``install` `python-pip`

(2). Fedora:

`yum ``install` `python-pip`

(3). Linux, Mac OSX, Windows 下都可用 get-pip.py 来安装 pip:https://pip.pypa.io/en/latest/installing.html

或者直接下载:get-pip.py 然后运行在终端运行 python get-pip.py 就可以安装 pip。

Note: 也可以下载 pip 源码包,运行 python setup.py install 进行安装

2.1.2 利用 pip 安装 Django

`(``sudo``) pip ``install` `Django``或者 (``sudo``) pip ``install` `Django==1.8.16 或者 pip ``install` `Django==1.11.8`

如果想升级 pip 可以用:

`(``sudo``) pip ``install` `--upgrade pip`

Windows 用户不要加 sudo,如果提示 ‘python’不是内部或外部命令,也不是可运行的程序或批处理文件。

那说明你的 Python 没有安装好,或者环境变量没有配置正确,最简单的办法是安装新版本的 Python(2.7.9 以上), 里面集成了 pip,安装时要勾选上环境变量这一个

windows 安装 Python 图片

还可以参见:Python 环境搭建

2.2. 下载源码安装

https://www.djangoproject.com/download/

如果是源码包, 比如 django-1.11.8.tar.gz

2.2.1 Linux 或 Mac 下

`tar` `-xvf django-1.11.8.``tar``.gz``cd` `django-1.11.8``(``sudo``) python setup.py ``install`

2.2.2 Windows 下

直接用解压软件解压,然后到命令行(XP/Win7点击开始,在下面的那个输入框中输入 cmd, Win8在开始那里点右键,选择命令行)

比如在 *D:\django-1.11.8* 这个文件夹下

`cd` `D:``cd` `django-1.11.8``python setup.py ``install`

什么?提示 ‘python’不是内部或外部命令,也不是可运行的程序或批处理文件。

那说明你的 Python 没有安装好,或者路径没有配置正确,参见:Python 环境搭建

2.3. Linux用自带源进行安装(不推荐)

2.3.1 ubuntu 下安装 Django

`sudo` `apt-get ``install` `python-django -y`

2.3.2 Fedora 下安装用 yum

`yum ``install` `python-django`

注意:自带源安装的 Django 一般版本比较旧,而用 pip 可以安装最新的版本。

三. 检查是否安装成功

终端上输入 python ,点击 Enter,进行 python 环境

`>>> ``import` `django``>>> django.VERSION``(1, 11, 8, ``'final'``, 0)``>>> ``>>> django.get_version()``'1.11.8'`

如果运行后看到版本号,就证明安装成功了,有问题请评论!

四. 搭建多个互不干扰的开发环境(可选)

我们有的时候会发现,一个电脑上有多个项目,一个依赖 Django 1.8,另一个比较旧的项目又要用 Django 1.5,这时候怎么办呢?

我们需要一个依赖包管理的工具来处理不同的环境。

如果不想搭建这个环境,只想用某一个版本的 Django 也可以,但是推荐学习此内容!

4.1 虚拟环境依赖安装

开发会用 virtualenv 来管理多个开发环境

Linux/MacOS 下

virtualenvwrapper 使得virtualenv变得更好用,所以我们一起安装了

`# 安装:``(sudo) pip install virtualenv virtualenvwrapper`

修改~/.bash_profile或其它环境变量相关文件(如 .bashrc 或用 ZSH 之后的 .zshrc),添加以下语句

`export` `WORKON_HOME=$HOME/.virtualenvs``export` `PROJECT_HOME=$HOME``/workspace``source` `/usr/local/bin/virtualenvwrapper``.sh`

修改后使之立即生效(也可以重启终端使之生效):

`source` `~/.bash_profile`

Windows 下:

`pip ``install` `virtualenv virtualenvwrapper-win`

【可选】Windows下默认虚拟环境是放在用户名下面的Envs中的,与桌面,我的文档,下载等文件夹在一块的。更改方法:计算机,属性,高级系统设置,环境变量,添加WORKON_HOME,如图(windows 10 环境变量设置截图):

workon_home.png

4.2 虚拟环境使用方法:

mkvirtualenv zqxt:创建运行环境zqxt

workon zqxt: 工作在 zqxt 环境 或 从其它环境切换到 zqxt 环境

deactivate: 退出终端环境

其它的:

rmvirtualenv ENV:删除运行环境ENV

mkproject mic:创建mic项目和运行环境mic

mktmpenv:创建临时运行环境

lsvirtualenv: 列出可用的运行环境

lssitepackages: 列出当前环境安装了的包

创建的环境是独立的,互不干扰,无需sudo权限即可使用 pip 来进行包的管理。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,142评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,298评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,068评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,081评论 1 291
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,099评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,071评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,990评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,832评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,274评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,488评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,649评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,378评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,979评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,625评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,643评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,545评论 2 352

推荐阅读更多精彩内容

  • Django环境搭建 一. 版本选择 Django 1.5.x 支持 Python 2.6.5 Python 2....
    SkTj阅读 205评论 0 0
  • 安装 Django 先安装 PIP,再通过 PIP 安装 Django 安装 PIP cd /data; mkdi...
    王义杰阅读 369评论 0 0
  • 1. 安装 Django 注意:以下方法中任何一种方法安装都可,不用每个都试一次。 另外 建议自行安装 bpyth...
    小叮当爱学习阅读 935评论 0 5
  • 一.我的环境 系统:CentOS 7,自带python2.7,加装python3.6 参考:linux下配置安装p...
    左跃飞阅读 244评论 0 0
  • 今天跑了大半天,就果断的把装修方案给定了下来! 进门鞋柜到顶,吊顶,拨动线;厨房灶台,顶柜,底柜,双层玻璃推拉门,...
    小新的成长记录阅读 190评论 0 0