系列
Django 学习教程- Hello world入门案例-CSDN博客
介绍
Django 是一个由 Python 编写用于Web 应用程序开发的高级 Python Web 框架
Django 提供了一套强大的工具(无需重新发明轮子),使得开发者能够快速构建 Web 网站。
Django 采用了 MTV 的软件设计模式,即模型(Model),视图(View)和模板(Template)。
谁适合阅读本教程?
学习本教程前你需要了解一些基础的 Web 知识和Python基础。
Python学习教程:Python从入门到精通学习教程
特点
-
ORM(对象关系映射): Django 提供了一个强大的 ORM,允许开发者通过 Python 代码来定义和操作数据库模型,而无需直接使用 SQL。这使得数据库操作更加抽象和易于管理。
-
MVC 架构: Django 遵循 MVC(模型-视图-控制器)的软件设计模式,但它使用了稍微不同的术语。在 Django 中,模型(Model)表示数据结构,视图(View)负责呈现用户界面,而控制器(Controller)的职责被称为视图(View)。
-
模板引擎: Django 使用模板引擎来生成 HTML,这使得前端和后端的代码分离更加容易。Django 的模板语言允许开发者在模板中嵌入动态内容。
-
自动化 admin 界面: Django 自动生成管理后台,使得管理和操作数据库的过程变得非常简单。开发者可以轻松地创建、修改和删除数据库记录,而无需编写自定义的管理界面。
-
表单处理: Django 提供了强大的表单处理工具,使得用户输入的验证和处理变得更加简单。这对于开发 Web 表单和处理用户提交的数据非常有用。
-
安全性: Django 内置了一些安全性功能,例如防止常见的 Web 攻击(如 CSRF 攻击),并提供了方便的用户身份验证和授权系统。
-
可扩展性: Django 的组件是松耦合的,允许开发者使用现有的组件或编写自己的应用程序来扩展框架功能。
-
社区支持: Django 拥有庞大的社区支持,提供了大量的文档、教程和第三方包,使得学习和使用 Django 变得更加容易。
MTV 模型
Django 的 MTV 模式本质上和 MVC 是一样的,也是为了各组件间保持松耦合关系,只是定义上有些许不同,Django 的 MTV 分别是指:
- M 表示模型(Model):编写程序应有的功能,负责业务对象与数据库的映射(ORM)。
- T 表示模板 (Template):负责如何把页面(html)展示给用户。
- V 表示视图(View):负责业务逻辑,并在适当时候调用 Model和 Template。
除了以上三层之外,还需要一个 URL 分发器,它的作用是将一个个 URL 的页面请求分发给不同的 View 处理,View 再调用相应的 Model 和 Template,MTV 的响应模式如下所示:
用户操作流程图:
解析:
用户通过浏览器向我们的服务器发起一个请求(request),这个请求会去访问视图函数:
- a.如果不涉及到数据调用,那么这个时候视图函数直接返回一个模板也就是一个网页给用户。
- b.如果涉及到数据调用,那么视图函数调用模型,模型去数据库查找数据,然后逐级返回。
视图函数把返回的数据填充到模板中空格,最后返回网页给用户。
安装 Django
在安装 Django 前,系统需要已经安装了 Python 的开发环境。
如果你还没有安装 Python,请先从 Python 官网Download Python | Python.org下载并安装最新版本的 Python。
Python安装教程:Python从入门到精通之安装与快速入门-CSDN博客
Django 安装也很简单包管理工具 pip 就可以了:
pip install django -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
验证是否安装成功,显示django版本号表示安装成功:
python -m django --version
如果一切顺利,你将看到安装的 Django 版本号,如:5.0