Django 是由 Python 编写的一个开源 Web 应用框架,Python + Django 是快速开发、设计、部署网站的最佳组合。

Django 版本与 Python 环境的对应表如下,建议对照表来选择Django和Python版本,以免造成不兼容等问题。

 Django 版本

 Python 版本

 1.5        

 2.6.5, 2.7, 3.2, 3.3.

 1.6

 2.6, 2.7, 3.2, 3.3

 1.7

 2.7, 3.2, 3.3, 3.4

 1.8 LTS

 2.7, 3.2, 3.3, 3.4, 3.5(长期支持版本 LTS)

 1.9

 2.7, 3.4, 3.5

 1.10

 2.7, 3.4, 3.5

 1.11 LTS

 2.7, 3.4, 3.5, 3.6(最后一个支持 Python 2 的版本)

 2.0

 3.4, 3.5, 3.6 (不再支持 Python 2)

 2.1

 3.5, 3.6, 3.7

 2.2 LTS

 3.5, 3.6, 3.7(长期支持版本 LTS)

 3.0

 3.6, 3.7, 3.8

一、 Django安装

1. 使用前提

  • 需要先安装python环境
  • 建议安装pip(版本不要太旧),否则用其安装其他模块经常有问题。

这两者的安装配置参考 python+pycharm 安装及测试

2. pip安装法

如果pip可以用、可以联网,这是最简单的方法,就一句命令。

# == 后为Django版本
pip3 install Django==2.2.7

如果pip版本太旧,安装报错了,可以根据提示进行更新,然后再使用。

# 更新pip
python -m pip install --upgrade pip

3. 离线安装法

  • 下载安装包

官网:Download Django | Django  安装包在右侧(非常非常慢)

建议使用国内的源:Links for Django  搜索对应版本下载即可

  • 解压安装包并和 Python安装目录放在同一个根目录

  • cmd进入 Django 目录,执行 python setup.py install 开始安装

python setup.py install

顺利的话,安装正常结束会看到以下返回。我装的时候遇到了一些报错,修复过程比较长,参考“四、报错处理”部分。

Django 会被安装到 Python\Lib\site-packages目录

4. 配置环境变量

  • 配置环境变量

将 D:\Python36\Lib\site-packages\Django-2.2.7-py3.6.egg\django;D:\Python36\Scripts 这两个目录添加到系统path环境变量中,添加完成后就可以使用Django的django-admin.py命令新建工程了。

5. 检查是否安装成功

输入以下命令进行检查,如果输出了Django的版本号说明安装正确。

import django
django.get_version()

二、 第一个Django项目

执行django-admin可以看到所有可用命令。

1. 创建项目

Startproject命令用于创建 新Django项目,进入目标目录,执行以下命令即可。

django-admin startproject HelloWorld

创建完成后我们可以查看下项目的目录结构:

目录结构说明:

  • HelloWorld:项目主目录。
  • manage.py:一个实用的命令行工具,可让你以各种方式与该 Django 项目交互。
  • HelloWorld/__init__.py:空文件,Python 包的初始化文件。
  • HelloWorld/settings.py:该 Django 项目的配置。
  • HelloWorld/urls.py:路由文件,匹配不同的url链接,调用不同的视图函数处理。
  • HelloWorld/views.py:视图函数文件,里面是一些自己写的函数。这个文件需要自己建,名字随意,但一般叫这个
  • HelloWorld/wsgi.py:web网关服务的配置文件,生产正式运行时通常需要用到。

2. 启动项目

进入 HelloWorld 目录,输入以下命令,启动HelloWorld项目。

python manage.py runserver 0.0.0.0:8000

这种是前台启动命令,命令行不能关闭。

0.0.0.0 让其它电脑可连接到开发服务器,8000 为端口号(默认)。在浏览器输入服务器的 ip及端口号(127.0.0.1:8000)。看到小火箭,说明启动成功。

三、 修改项目内容

1. 视图配置

在先前创建的 HelloWorld 目录下的 HelloWorld 目录新建一个 views.py 文件,输入我们自己的代码:

from django.http import HttpResponse 

def hello(request): 
    return HttpResponse("Hello world ! ")

2. 绑定URL与视图函数

打开 urls.py 文件,删除原来代码,将以下代码复制粘贴到 urls.py 文件中:

from django.conf.urls import url 
from . import views 
urlpatterns = [ 
   url(r'^$', views.hello), 
]

整个目录结构如下:

完成后,再次启动 Django 项目,并在浏览器访问

python manage.py runserver 0.0.0.0:8000

测试成功!

四、 报错处理

1. 报错信息

在我最开始执行 python setup.py install 安装Django时,遇到以下报错

根据报错我们 缺少 sqlparse 模块,在尝试联网安装时由于网络太差报错超时。如果pip可用并且网络好,解决这个问题非常简单,执行以下命令即可。

# sqlparse 模块依赖于pytz模块,需要先安装pytz模块
pip install pytz
pip install sqlparse

2. 安装pytz模块

由于我们网络太差,选择离线安装pytz

  • 从国内镜像下载  http://mirrors.aliyun.com/pypi/simple/pytz/  网络差不推荐到官网下载,实在太慢了。
  • 下载后解压

  • 开始安装(python安装各模块install命令是一样的)
python setup.py install

3. 安装 sqlparse 模块

离线安装方法跟pytz是一样的,这里不再重复,测试用pip安装:

pip install sqlparse

缺少模块都安装完后,再来重新执行 python setup.py install 安装Django。这里没再遇到什么错误,安装完成。

五、 国内常用镜像

参考

https://www.runoob.com/django/django-install.html

https://www.cnblogs.com/shixi-study/p/11332891.html