Django开发模式与流程

Python的WEB框架有Django、Tornado、Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM、模型绑定、模板引擎、缓存、Session等诸多功能。

一.Django的MTV开发模式与一般的MVC开发模式区别

1.MVC模式

 在MVC模式中,应用程序被划分成了模型(Model)、视图(View)和控(Controller)三个部分。
(1)模型(Model)部分包含了应用程序的业务逻辑和业务数据;
(2)视图(View)部分封装了应用程序的输出形式,也就是通常所说的页面或者是界面;
(3)控制器(Controller)部分负责协调模型和视图,根据用户请求来选择要调用哪个模型来处理业务,以及最终由哪个视图为用户做出应答。

Django开发模式与流程_第1张图片
2.Django的MTV开发模式

1)M 带包模型(Model) 负责业务对象和数据库的关系映射(ORM)
(2)T 代表模板(Template) 负责如何把页面展示给用户(html)
(3)V 代表视图 (View) 负责业务逻辑 并在适当时候调用Mode和Template
出了以上三层外,还需要一个URL分发器、他的作用是讲一个个URL的页面请求分发给不同的View处理,

Django开发模式与流程_第2张图片
两者对应关系:
Django开发模式与流程_第3张图片
M-M:数据库相关
T-V:页面相关
V-C:视图控制

二.Django主要模块及其功能

1.setting:配置信息
2.urls:路由分发功能
3.views:视图处理函数
4.admin:关于数据库的后台管理工具
5.models:数据库表定义的ORM(对象关系映射)

三.Django的生命周期

1.HTTP请求
2.服务器接收,在urls的路由关系表中进行匹配
3.匹配成功后,执行对应视图(views)函数
4.相关业务处理:
(1)个人需求
(2)数据库:原生sql或Django ORM
(3)返回给用户:响应头,响应体

四.创建django程序

终端命令:django-admin startproject sitename
IDE创建Django程序时,本质上都是自动执行上述命令

其他常用命令:

  python manage.py runserver 0.0.0.0 启动服务器
  python manage.py startapp appname 创建应用
  python manage.py syncdb
  python manage.py makemigrations 初始化表
  python manage.py migrate 生成表

  python manage.py createsuperuser 创建超级用户

五、程序目录

Django开发模式与流程_第4张图片

你可能感兴趣的:(django)