gpt4 book ai didi

django - 后端和前端 MVC

转载 作者:行者123 更新时间:2023-12-03 21:43:32 25 4
gpt4 key购买 nike

我对 Web 开发和 MVC 架构的世界很陌生。我目前正在研究 django,我认为它是一个 MVC 框架。如果我是对的,对于 Web 应用程序 MVC 意味着

View 是前端
模型是后端
Controller 是前端和后端之间的粘合剂

好吧,如果上述情况属实并且 View 是唯一的前端部分,那么像主干、角度这样的前端框架的功能究竟是什么?他们究竟是如何部署 mvc 概念的?此外,在构建一个简单的博客站点时,哪种框架更可取?以及是否有同时使用前端和后端 mvc 框架的网站实例?请举例说明。为了澄清,我经历了这个问题:In the Model-View-Controller principle, what is the Frontend and what is the Backend?但无法完全理解。谢谢你

最佳答案

前端和后端以及 MVC 模型没有一对一的类比。例如,(Django)站点的管理员通常被认为是后端的一部分——它不是用户将看到的站点的一部分——但管理员的一部分绝对是 MVC 模型的 View 部分。普通网络用户看到和/或直接与之交互的任何东西都是前端的一部分,其他一切都是后端的一部分。

现在Django中使用的MVC框架是什么?我们有:

  • 模型:这是应用程序中保存应用程序状态的部分。在 Django 中,其中很大一部分是数据库及其抽象层,即 Django 模型。其他部分是用户 session 和 request多变的。
  • View :这是应用程序的一部分,用于向用户呈现应用程序的状态。 Django View 和模板对此负责。打开网站时看到的任何数据都是MVC的查看部分。整体展示也是其中的一部分。
  • Controller :这是应用程序的一部分,代表您(用户)采取的任何操作。 Django 并不是真正独立的 MVC 框架,因为 View 部分和 Controller 部分是如此紧密地交织在一起:您在站点上看到的任何链接、表单或按钮都是一个 Controller 。它告诉站点执行操作,例如呈现不同的 View (例如链接),或更改模型的状态(例如编辑表单)。

  • Backbone 或 Angular 怎么样?为什么在一个应用程序中需要两个不同的 MVC 框架?

    Django 是一个服务器端框架。每个 Action 都发生在服务器上。如果您单击链接或提交表单,则会向服务器发送请求,服务器会发回完整的静态响应(静态,即页面一旦进入浏览器就不会更改)。您不能使用 Django 来使用逻辑客户端,因为它是在您的服务器上运行的 Python 框架,而不是在您客户端的浏览器中。相反,添加任何客户端逻辑是 Javascript 的工作,例如重新排列页面上的项目列表或动态添加新项目。现在每个页面都可以看作是某种迷你应用程序。

    Backbone 和 Angular 是此类客户端应用程序的 MVC 框架示例。它提供了Django等服务端框架所缺乏的客户端应用逻辑,令人惊讶的是喜欢MVC框架开发服务端应用的人普遍也喜欢用MVC框架开发客户端应用.

    关于django - 后端和前端 MVC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18023170/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com