Django环境安装--Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程
所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址。
Django是由Python编写的Web框架,依赖Python环境,所以需要提前安装好Python解释器。
关于Python的安装,请参考站点中Python教程的相关部分,这里不再赘述。
建议安装最新版本的Python3,因为从Django2.0开始将不再支持Python2.7。
当前Python最新版本为3.6.3,安装完毕后,会自动安装pip工具包。
进行Python + Django的Web开发,最佳IDE环境是Pycharm,请大家自行安装。
当前时间点2017年10月,Django对Python版本的依赖关系如下表所示:
| Django 版本 | Python 版本 |
|---|---|
| 1.8 | 2.7, 3.2 (until the end of 2016), 3.3, 3.4, 3.5 |
| 1.9, 1.10 | 2.7, 3.4, 3.5 |
| 1.11 | 2.7, 3.4, 3.5, 3.6 |
| 2.0 | 3.4, 3.5, 3.6 |
| 2.1 | 3.5, 3.6, 3.7 |
Django本身的版本支持路线图如下所示:

具体的时间如下图:

未来版本的计划节点:

可以看到,当前的1.11版是个LTS长期支持版本,可以用到2020年,是一个不错的选择。而2.0版和2.1版都是过渡版本,直到2019年的2.2版才是个LTS版本。
一、安装Django
1. 通过pip安装Django
如果你是通过升级的方式安装Django,那么你需要先卸载旧的版本。
Django提供3种发行版本,推荐使用官方的稳定版本:
- 你的操作系统提供的发行版本(Linux)
- 官方稳定版本(推荐)
- 开发测试版本
Django本质上是Python语言的一个类库,因此可以通过pip工具安装。这也是最简便最好的安装方式。不建议通过下载安装包或者编译源码进行安装的方法,除非你的环境无法连接外部网络。
这里介绍windows系统下pip命令安装方式。
win+r,调出cmd,运行命令:pip install django,自动安装PyPi提供的最新版本。
如果要指定版本,可使用pip install django==1.10这种形式。
安装完成后如下图所示:

如果你看到本教程的时候,Django的版本已经发生了很大的变化,那么你可能需要注意一些版本之间的不同之处,最好的办法,就是指定安装与教程一样的1.11.6版本。
在Linux操作系统中,也是一样,使用pip工具包安装Django。
2. 验证安装
进入Python交互式环境(注意一定要进入刚才安装了Django的Python解释器),按下面所示查看安装版本:
>>> import django
>>> print(django.get_version())
1.11
或者使用pip list命令,查看是否存在Django模块。
3. 配置系统环境
成功安装Django后,以windows为例,在Python根目录下的Scripts目录中可找到一个django-admin.exe文件,这是Django的核心管理程序,最好将它加入操作系统的环境变量中,这样在以后的调用会比较方便。
如何进入环境变量设置界面,参考Python教程中的相关部分。如下图所示,在Path变量中添加Scripts目录。

回到cmd界面,运行django-admin help,能看到下面的内容表示环境变量设置成功。

二、 测试Django
1. 在cmd或Linux命令行环境下创建Django项目
在windows的cmd环境中(Linux中类同),新建或者进入你想创建Django项目的目录,然后输入下面的命令:
django-admin startproject mysite
这样就会在当前目录下创建一个叫做mysite的Django项目。
D:\test>django-admin startproject mysite
D:\test>dir
D:\test 的目录
2017/10/20 11:19 <DIR> .
2017/10/20 11:19 <DIR> ..
2017/10/20 11:19 <DIR> mysite
0 个文件 0 字节
3 个目录 102,160,605,184 可用字节
可以看到Django自动帮我们创建了一个mysite文件夹,这是项目的根目录。在mysite根目录中,又有一个mysite目录,这是整个项目的配置文件目录(一定不要和同名的根目录搞混淆了),还有一个manage.py文件,是整个项目的管理脚本。
D:\test>cd mysite
D:\test\mysite>dir
D:\test\mysite 的目录
2017/10/20 11:19 <DIR> .
2017/10/20 11:19 <DIR> ..
2017/10/20 11:19 826 manage.py
2017/10/20 11:19 <DIR> mysite
1 个文件 826 字节
3 个目录 102,160,605,184 可用字节
D:\test\mysite>cd mysite
D:\test\mysite\mysite>dir
D:\test\mysite\mysite 的目录
2017/10/20 11:19 <DIR> .
2017/10/20 11:19 <DIR> ..
2017/10/20 11:19 3,216 settings.py
2017/10/20 11:19 784 urls.py
2017/10/20 11:19 406 wsgi.py
2017/10/20 11:19 0 __init__.py
4 个文件 4,406 字节
2 个目录 102,160,605,184 可用字节
在项目根目录下,运行Python manage.py runserver,Django会以127.0.0.1:8000这个默认配置启动开发服务器。
D:\test\mysite>python manage.py runserver
Performing system checks...
System check identified no issues (0 silenced).
You have 13 unapplied migration(s). Your project may not work properly until you
apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
October 20, 2017 - 11:28:59
Django version 1.11.6, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
打开你的浏览器,在地址栏输入127.0.0.1:8000,如果看到如下的界面,说明Django一切正常,你可以放心大胆的开始Django之旅了!

2. 在windows下使用Pycharm创建Django项目
前面介绍的是在命令行环境中项目的创建和服务器的启动。其实,在大多数情况下,我们都是在Windows操作系统下,使用Pycharm进行Django开发。
Pycharm不但是Python最好的集成环境,并且对Django、Flask、HTML5等各种框架和语言都非常友好。下面介绍在Pycharm中创建Django项目的方法。
启动Pycharm后,点击file-->new project,出现下面的对话框。

选择Django栏目,输入项目名称,还是采用国际惯例的mysite。选择Python解释器版本,点击create创建。
Django将自动生成下面的目录结构:

和我们在命令行界面中不一样的是,不用手动调用diango-admin命令。同样的是,会自动创建与项目同名的目录,包含了配置文件。templates目录是Pycharm安利给我们的,HTML文件存放处,也就是MTV中的T的目录。manage.py则一样是Django项目管理文件。
启动开发服务器:
在pycharm中启动服务器也不需要输入命令,只需要如下动作:
在Pycharm的上部工具栏中找到下面图示的图标。

点击下拉箭头。

点击edit configurations。

在host中填入127.0.0.1,port中填入8000。
OK确定之后,点击绿色的三角,web服务就运行起来了。

按图所示,自动跳转到浏览器程序界面,如果看到下面的界面,说明一切OK!

注意:如果没有特别说明,教程将采用在Pycharm中开发Django项目的方式。
Django环境安装--Django从入门到精通系列教程的更多相关文章
- 办公软件Office PPT 2010视频教程从入门到精通系列教程(22课时)
办公软件Office PPT 2010视频教程从入门到精通系列教程(22课时) 乔布斯的成功离不开美轮美奂的幻灯片效果,一个成功的商务人士.部门经理也少不了各种各样的PPT幻灯片.绿色资源网给你提供了 ...
- 第一章:模型层model layer -- Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. 题外话: Django的教程写到这里,就进入 ...
- Part 1:请求与响应--Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
- Part 2:模型与后台管理admin站点--Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
- Part 7:自定义admin站点--Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
- Django简介--Django从入门到精通系列教程
该系列教程系个人原创,并同步发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
- 模型和字段 -- Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
- Part 5:Django测试--Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. 本节将简要介绍Django的自动化测试相关内 ...
- Part 3:视图和模板--Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
随机推荐
- LeetCode第[11]题(Java):Container With Most Water 标签:Array
题目难度:Medium Given n non-negative integers a1, a2, ..., an, where each represents a point at coordina ...
- mysqlfront提示过期解决方式
帮助菜单(help)->登记(registration) 粘贴就好了 gNBpPFgyOw9Rwt/ozsnjgM7tJNo2 bhaaAThangemMkaz2tQhq3/f7dZ7Vj29W ...
- CTF---Web入门第五题 貌似有点难
貌似有点难分值:20 来源: 西普学院 难度:难 参与人数:7249人 Get Flag:2519人 答题人数:2690人 解题通过率:94% 不多说,去看题目吧. 解题链接: http://ctf5 ...
- hdu_1030(数学题+找规律)
规律就是两个数字的level差+left差+right差 代码: #include<cstdio> #include<iostream> #include<cstring ...
- LightOJ DNA Prefix(字典树+dfs)
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=121897#problem/F F - DNA Prefix Time Limit:200 ...
- JAVA虚拟机之对象探秘
上一章主要写到了JVM中运行时数据区域各个部分的功能及其作用.上一章说到了对象是分配在堆上面的,所以接下来我们写到对象在堆内存中是如何创建.如何布局.如何访问.1. 对象的创建 在java程序中对象的 ...
- SpringMVC框架学习笔记(5)——数据处理
1.提交数据的处理 a)提交的域名称和参数名称一致 http://localhost:8080/foward/hello.do?name=zhangsan 处理方法 @RequestMapping(v ...
- C#的LINQ
在过去如果我们如果需要去查询某些集合或者数组里面的某些元素,我们需要写出大量的带有筛选的遍历集合的代码,但是有了Linq之后,我们就不用写出那些冗余麻烦的遍历代码,只需要关注其中的筛选,排列的函数就可 ...
- Spring最核心的功能是什么?使用Spring框架的最核心的原因是什么?
quote:Spring最核心的功能是什么?使用Spring框架的最核心的原因是什么? (IT公司面试手册,可以多看看) spring 框架中核心组件有三个:Core.Context 和 Beans. ...
- 2. Event编写
Event作用: 存储事件数据. IEventBase K:是Actor的StateId的类型,可以是long.可以是string,Ray一般使用OGuid生成的字符串作为主键. 编写Event继承I ...