可能重复:
Confused by Django's claim to MVC, what is it exactly?
因为在MVC中,“视图”通常是模板......
答案 0 :(得分:25)
嗯,标准名称是 有争议的。
在我们对MVC的解释中, “view”描述了获得的数据 呈现给用户。不是 必然是数据的外观,但是 提供哪些数据。风景 描述您看到的数据,而不是如何 你看到了这是一个微妙的区别。
所以,在我们的例子中,“视图”是 Python的回调函数 特定的URL,因为该回调 函数描述了哪些数据 呈现。
此外,分开是明智的 来自演示的内容 - 即 模板进来的地方。在Django,a “view”描述了哪些数据 提出,但通常是一种观点 委托给一个模板,哪个 描述了如何呈现数据。
“控制器”适合哪里, 然后?在Django的情况下,它可能是 框架本身:机器 向...发送请求 适当的观点,根据 Django URL配置。
如果你渴望得到首字母缩略词,那么 可能会说Django是一个“MTV” 框架 - 即“模型”, “模板”和“视图”。故障 更有意义。
当然,当天结束了 完成任务。和, 无论如何命名, Django以某种方式完成工作 对我们来说最合乎逻辑。
答案 1 :(得分:2)
答案 2 :(得分:2)
是Django不是MVC,Django更喜欢为Model Template View调用其MVC实现MTV。
有关Django和MTV的更多信息,请参阅this博客