Python开发【第十八篇】Web框架之Django【基础篇】

一、简介

Python下有许多款不同的 Web 框架,Django 是重量级选手中最有代表性的一位,许多成功的网站和 APP 都基于 Django 开发的。

Django 是一个开放源代码的Web应用框架,由 Python 编写。

Django 遵守 BSD 版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 。

Django 采用了 MVC 的软件设计模式,即模型 M,视图 V和控制器 C。

二、安装

在安装 Django 前,系统需要已经安装了 Python 的开发环境。接下来我们来具体看下不同系统下 Django 的安装。

注意:目前 Django 1.6.x 以上版本已经完全兼容 Python 3.x。

1. Window 下安装 Django

如果未安装 Python 环境,需要先安装 Python。

1)Python 安装

  • 选择定制安装,勾选添加到 PATH

    Python开发【第十八篇】Web框架之Django【基础篇】

    

  • 下一步

    Python开发【第十八篇】Web框架之Django【基础篇】

  • 选择安装目录

    Python开发【第十八篇】Web框架之Django【基础篇】

  • 安装成功

    Python开发【第十八篇】Web框架之Django【基础篇】

2)Django 安装

第一种安装方法:

  • 下载 Django 压缩包
  • 解压并和 Python 安装目录放在同一个根目录
  • 进入 Django 目录,执行 python setup.py install 后开始安装

第二种安装方法:

打开  cmd 命令窗口,执行命令:

>pip3 install django

返回信息:

Python开发【第十八篇】Web框架之Django【基础篇】

提示 “Successfully installed django-1.10.6” ,即为安装成功。

以上两种方法,会将 Django 安装到 Python 的 Lib 下 site-packages 目录。

将这几个目录添加到系统环境变量中: C:\Python35\Lib\site-packages\django;C:\Python35\Scripts;

添加完成后就可以使用 Django 的 django-admin.py 命令新建工程了。

3)检查是否安装成功

输入以下命令进行检查:

>>> import django
>>> print(django.get_version())

返回信息:

Python开发【第十八篇】Web框架之Django【基础篇】

如果输出了Django的版本号说明安装正确。

2. Linux 上安装 Django

以下安装位于 Centos Linux 环境下安装,如果是你的 Linux 系统是 ubuntu 请使用 apt-get 命令。

默认情况下 Linux 环境已经支持了 Python。

可以在终端输入python 命令来查看是否已经安装。

1)yum 安装方法

  • 查看 python 是否安装

Python开发【第十八篇】Web框架之Django【基础篇】

  • 安装 setuptools

# yum install setuptools
  • 使用 easy_install 命令安装 django
# easy_install django

2)pip 命令安装

# pip install Django

3)源码安装方法

输入以下命令并安装:

# tar xzvf Django-X.Y.tar.gz    # 解压下载包
# cd Django-X.Y                 # 进入 Django 目录
# python setup.py install       # 执行安装命令

安装成功后 Django 位于 Python 安装目录的 site-packages 目录下。

通过以上方法安装完成后,验证 Django 是否安装成功:

Python开发【第十八篇】Web框架之Django【基础篇】

输出了 Django 的版本号,说明安装成功。

3. Mac 下安装

1)下载

这里下载最新的稳定版本:Django-1.x.y.tar.gz,在页面右侧列表下载,如下图: 

Python开发【第十八篇】Web框架之Django【基础篇】

最新的官方版本为 Django-1.10.6.tar.gz

进入你下载该文件的文件夹目录,执行如下命令:

$ tar zxvf Django-1.x.y.tar.gz

也可以从 Github 上下载最新版,地址:https://github.com/django/django

git clone https://github.com/django/django.git

2)安装

进入解压后的目录:

cd Django-1.x.y
sudo python setup.py install

安装成功后会输出以下信息:

……
Processing dependencies for Django==1.x.y
Finished processing dependencies for Django==1.x.y

三、创建第一个 Django 项目

测试版本说明:

  • Python 3.5.2

  • Django 1.10.6

安装 Django 之后,已经有了可用的管理工具 django-admin.py,使用 django-admin.py 创建项目。

1. 创建 HelloWorld 项目

进入项目目录,执行以下命令:

>django-admin startproject HelloWorld

2. 项目目录结构

HelloWorld
├── HelloWorld
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── manage.py

目录说明:

  • HelloWorld: 项目的容器。
  • manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
  • HelloWorld/__init__.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
  • HelloWorld/settings.py: 该 Django 项目的设置/配置。
  • HelloWorld/urls.py: 该 Django 项目的 URL 声明,一份由 Django 驱动的网站"目录"。
  • HelloWorld/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行项目。

3. 启动服务

1)进入 HelloWorld 目录输入以下命令,启动服务器:

# python manage.py runserver 0.0.0.0:8000

0.0.0.0 让其它客户端连接到服务器,8000 为端口号。如果不说明,那么端口号默认为 8000。

返回信息:

Python开发【第十八篇】Web框架之Django【基础篇】

2)测试

在浏览器输入服务器的 IP 及端口号,如果正常启动,输出结果如下:

Python开发【第十八篇】Web框架之Django【基础篇】

4. 创建 view.py 文件

在创建的 HelloWorld 目录下的 HelloWorld 目录新建一个 view.py 文件,并输入代码:

1 from django.http import HttpResponse
2 
3 def hello(request):
4     return HttpResponse('Hello world!')

5. 绑定 URL 与视图函数

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

1 from django.conf.urls import url
2 from django.contrib import admin
3 from . import view
4 
5 urlpatterns = [
6     url(r'^admin/', admin.site.urls),
7     url(r'^hello/', view.hello),
8 ]

6. 测试

启动 Django 服务器,在浏览器访问:

Python开发【第十八篇】Web框架之Django【基础篇】

访问日志:

Python开发【第十八篇】Web框架之Django【基础篇】

注意:项目中如果代码有改动,服务器会自动监测代码的改动并自动重新载入,所以如果已经启动了服务器,则不需手动重启。

7. url() 函数

Django url() 可以接收四个参数,分别是两个必选参数:regex、view 和两个可选参数:kwargs、name,接下来详细介绍这四个参数。

  • regex: 正则表达式,与之匹配的 URL 会执行对应的第二个参数 view。

  • view: 用于执行与正则表达式匹配的 URL 请求。

  • kwargs: 视图使用的字典类型的参数。

  • name: 用来反向获取 URL。

四、Django 模板

相关文章: