Skip to main content
 首页 » 编程设计

python之我的 Controller 逻辑在 Django 中放在哪里

2024年08月25日29lyj

我是从 iOS 背景转到 Django 的。作为应用程序开发人员,我习惯于明确定义 MVC 架构。我的 Storyboard包含我的观点。我的 View Controller 包含我的逻辑,我的模型存在于对象关系映射器 (ORM) 框架或数据库中。

在网络上,职责分离似乎不太明确。当然,存在数据库和 ORM。 HTML 似乎是我的看法。 Django 模型似乎就是这样。但是 Controller 在哪里?

我的业务逻辑在哪里?

请您参考如下方法:

作为Django FAQ本身指出,Django 并没有完全遵循 MVC 方法,至少不是以直接的方式。 (他们争辩说 Django 本身就是 Controller ,但这并不是我对 MVC 的真正看法。)

Django 中的“ Controller ”基本上就是 Django 所说的 View 。所以你有你的模型类,这显然是 M。模板/HTML 基本上是 MVC 中的 V。 Django View (函数或类)是针对特定 URL 运行的有效回调,并且它们往往位于大量逻辑所在的位置。因此,例如,您将拥有一个名为 get_foo_bar 的 Django View ,它会在有人向/foo/bar 发出 GET 请求时运行,并且 Django View 实际上成为 MVC 中的 C。

长话短说,您的逻辑通常会出现在您的 Django View 中。