Django:既然严格来说它不是MVC,而是MTV,那么什么是“MVC”;“视图”;?

Django:既然严格来说它不是MVC,而是MTV,那么什么是“MVC”;“视图”;?,django,model-view-controller,model,django-views,Django,Model View Controller,Model,Django Views,我是Django的新手,我读到了关于它的两件有点矛盾的事情。一个消息来源说它是基于MVC(模型-视图-控制器)风格的,另一个则认为它是MTV(模型-模板-视图)。我把它理解为MTV。我的观点正确吗?没有双关语的意思 如果是的话,我仍然对“观点”的两个概念感到困惑,因为它们在两种情况下是不同的 Django Documentation说: 视图是Django应用程序中的一种“类型”的网页,通常提供特定的功能并具有特定的模板 对我来说,这听起来像是一个带有模板的函数 有人清楚地了解情况吗?一个好的,

我是Django的新手,我读到了关于它的两件有点矛盾的事情。一个消息来源说它是基于MVC(模型-视图-控制器)风格的,另一个则认为它是MTV(模型-模板-视图)。我把它理解为MTV。我的观点正确吗?没有双关语的意思

如果是的话,我仍然对“观点”的两个概念感到困惑,因为它们在两种情况下是不同的

Django Documentation说:

视图是Django应用程序中的一种“类型”的网页,通常提供特定的功能并具有特定的模板

对我来说,这听起来像是一个带有模板的函数


有人清楚地了解情况吗?一个好的,越简单越好的解释。也许是一些类比?

我想你被模式、风格、类比和首字母缩略词弄糊涂了

Django有一个名为
urls.py
的文件,它将传入的请求映射到视图。视图是一个函数(或实现某些方法的类),其返回值(通常为
HTTPResponse
)被发送回浏览器。视图通常(但不一定总是)使用模板来生成返回值

Django还有一个ORM层(Python类和数据库表之间的映射),这种表示数据库表的类称为“模型”。视图通常需要来自数据库的信息,它们调用模型上的函数来获取信息

Django的另一个核心部分是表单处理。视图通常需要从请求中获取参数(比如从提交的表单中),并使用表单来获取参数


那是Django。如果这显然是对你的首字母缩略语模式,你可以自由地考虑……

视图是我们用来写业务逻辑的地方。业务逻辑可以在项目中的任何地方编写,但建议在视图中编写。
view函数,简称view,只是一个Python函数,它接受Web请求并返回Web响应。此响应可以是网页的HTML内容、重定向、404错误、XML文档或图像。或者别的什么,真的。视图本身包含返回该响应所需的任意逻辑。这段代码可以存在于您想要的任何地方,只要它位于您的Python路径上。没有其他要求——可以说,没有“魔法”。为了将代码放在某个地方,惯例是将视图放在名为views.py的文件中,放在项目或应用程序目录中。
仔细阅读文档以获得更清晰的想法

https://docs.djangoproject.com/en/1.6/topics/http/views/#writing-views

Django视图是控制器,除了Django的开发人员之外,其他人都理解MVC.Wooble,ty。我搜索了django mvc,但不知怎么的,这并不在前5名的结果中。甚至没有进入前十名,所以我自然错过了。此外,我尝试添加一个“MTV”标签,但我没有足够的声誉来这样做。这一点也不令人惊讶。这种避开流行语的做法是完全受欢迎的=D