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