Django(⼀):Django的设计模式
什么是MVC设计模式? 及其优点
MVC即 Model-View-Controller(模型-视图-控制器) 模式。
- Model (模型) 简⽽⾔之即数据模型。模型不是数据本⾝(⽐如数据库⾥的数据),⽽是抽象的描述数据的构成和逻辑关系。通常模型包括了数据表的各个字段(⽐如⼈的年龄和出⽣⽇期)和相互关系(单对单,单对多关系等)。数据库⾥的表会根据模型的定义来⽣成创建。
- View (视图) 主要⽤于显⽰数据,⽤来展⽰⽤户可以看到的内容或提供⽤户可以输⼊或操作的界⾯。数据来源于哪⾥?当然是数据库啦。那么⽤户输⼊的数据给谁? 当然是给控制器啦。
- Controller(控制器)是应⽤程序中处理⽤户交互的部分。通常控制器负责从视图读取数据,控制⽤户输⼊,并向模型发送数据(⽐如增加或更新数据表)。
MVC最⼤的优点是实现了软件或⽹络应⽤开发过程中数据,业务逻辑和界⾯的分离,使软件开发更清晰,也是维护变得更容易。这与静态⽹页设计中使⽤html和css实现了内容和样式的分离是同⼀个道理。
Django中的MTV模式
Django⽹站开发的mtv模式: Model(模型), Template(模板)和View(视图)。它们看似与MVC设计模式不太⼀致,其实本质是相同的。但是Django的View和经典的View确实有⾮常⼤的不同。
- Model:与经典MVC模式下的Model差不多。是数据模型并不是数据本⾝
- Template:与经典MVC模式下的View⼀致。决定了⽤户界⾯的外观
- Views:负责业务逻辑,并调⽤Model和Template。
此外还有⼀个路由分发器Urls,将⼀个个URL的页⾯请求分发给不同的View处理,View再调⽤相应的Model和Template。Urls+Views合起来使⽤,与经典MVC下的Controller更像
网页界面设计的定义Hello Django⽰例
/hellodjango/urls.py
from django.urls import path
from . import views
urlpatterns = [
path('index/', views.index, name='index'), ]
/App/views.py
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello Django!")
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论