该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程

所有转载本文者,需在顶部显著位置注明原作者及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从入门到精通系列教程的更多相关文章

  1. 办公软件Office PPT 2010视频教程从入门到精通系列教程(22课时)

    办公软件Office PPT 2010视频教程从入门到精通系列教程(22课时) 乔布斯的成功离不开美轮美奂的幻灯片效果,一个成功的商务人士.部门经理也少不了各种各样的PPT幻灯片.绿色资源网给你提供了 ...

  2. 第一章:模型层model layer -- Django从入门到精通系列教程

    该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. 题外话: Django的教程写到这里,就进入 ...

  3. Part 1:请求与响应--Django从入门到精通系列教程

    该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...

  4. Part 2:模型与后台管理admin站点--Django从入门到精通系列教程

    该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...

  5. Part 7:自定义admin站点--Django从入门到精通系列教程

    该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...

  6. Django简介--Django从入门到精通系列教程

    该系列教程系个人原创,并同步发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...

  7. 模型和字段 -- Django从入门到精通系列教程

    该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...

  8. Part 5:Django测试--Django从入门到精通系列教程

    该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. 本节将简要介绍Django的自动化测试相关内 ...

  9. Part 3:视图和模板--Django从入门到精通系列教程

    该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...

随机推荐

  1. Ftplib模块的用法

    login(user='',passwd='', acct='') 登录到FTP 服务器,所有的参数都是可选的 pwd() 当前工作目录 cwd(path) 把当前工作目录设置为path dir([p ...

  2. Redis随笔(三)主从搭建

    1.安装redis cd /root/svr/wget http://download.redis.io/releases/redis-3.2.9.tar.gz tar -zxvf redis-3.2 ...

  3. nginx 的基本配置

    安装(mac):关于brew  的问题:http://www.cnblogs.com/adouwt/p/8042201.html brew install nginx  启动: brew servic ...

  4. form表单转换为Json数据

    最近对前端js学习有点多,如今想自己动手写点插件,后来发现,我想到的,其他人都想到了.于是做了以下笔记. 使用插件: 插件 :https://github.com/marioizquierdo/jqu ...

  5. 常见的VPS虚拟化架构:OpenVZ、Xen、Hyper-V、KVM、VMWare OpenVZ

    OpenVZ OpenVZ特点是,它是直接调用母服务器的内核,所以会导致部分软件无法使用,以及部分内核文件是无法修改. OpenVZ适用人群:新手.低预算客户 OpenVZ注意事项:资源不是自己独有的 ...

  6. Mysql安装与主从配置

    安装MySql 操作系统:Windows Server 2008 R2 Standard MySql版本:mysql-5.7.17-winx64 第一步:解压mysql-5.7.17-winx64.z ...

  7. AtCoder Grand Contest 016

    在雅礼和衡水的dalao们打了一场atcoder 然而窝好菜啊…… A - Shrinking 题意:定义一次操作为将长度为n的字符串变成长度n-1的字符串,且变化后第i个字母为变化前第i 或 i+1 ...

  8. [51nod1373]哈利与他的机械键盘

    作为一名屌丝程序员,机械键盘是哈利梦寐以求的神器.终于,在除夕夜的时候,他爸爸送了他一个机械键盘. 哈利的键盘与我们平常所见到的的键盘不一样,我们可以认为他的键盘是一个500*500的矩形,其中26个 ...

  9. 最新版Sublime Text Build 3156 x64 的下载 + 注册码 + Install Package Control + 汉化教程

    一.Sublime Text  下载 神器 Sublime Text 最近开始更新到开发版本 Build 3156,本身英语不是太6,汉化党自然各种百度汉化教程,网上不是一堆绿色汉化包,就是让你下载汉 ...

  10. Coins、Tokens、山寨币:区别在哪里

    [译] Coins, Tokens & Altcoins: What's the Difference? coin:指"正宗的"数字货币,比如比特币 tokens:比如用 ...