在django documentation,他们提到了
在我们对MVC的解释中,“视图”描述了呈现给用户的数据。不一定是数据的外观,而是要显示的数据。该视图描述的是您看到的数据,而不是如何查看。这是一个微妙的区别。
...
因此,在我们的示例中,“视图”是特定URL的Python回调函数,因为该回调函数描述了要显示的数据。
...
那么“控制器”放在哪里?在Django的情况下,可能是框架本身:根据Django URL配置将请求发送到适当视图的机器。
是的,对于view
,我完全同意。但是,在某些情况下修改(或删除)数据时,我不同意他们提到的内容。因为通常我也已经将modify
实施为delete
或view
。哪个不处理“存在哪些数据”,而是“控制数据”。从这个意义上讲,view
(django说)不是我所说的controller
,而是我所说的view
。
还是我以错误的方式实现了 Function_Name(argument1, argument2)
?请让我知道django的“ MTV”的详细信息。
答案 0 :(得分:1)
对于Django,在View和Controller部分之间没有明显的边界,但在View和Template部分之间有明显的边界。对于许多其他MVC框架,则是相反的情况。这就是为什么对于其他技术上为MVCT框架的类型名称简化为MVC(视图和模板共同构成视图),而对于Django,它的名称简化为MVT(视图和控制器共同构成视图)的原因。这是我对类型命名方案的理解。但是不要太挂了。当您使用诸如django-rest-framework之类的东西时,这仍然非常模糊并且不正确。