Drupal 是不是符合 MVC 范式?

Posted

技术标签:

【中文标题】Drupal 是不是符合 MVC 范式?【英文标题】:Does Drupal comply with the MVC paradigm?Drupal 是否符合 MVC 范式? 【发布时间】:2011-05-24 01:03:43 【问题描述】:

Drupal 经常被称为内容管理框架,它是否符合 MVC 范式?如果有,Drupal 是如何实现 MVC 的?

谢谢。

【问题讨论】:

但是你可以在drupal中使用mvc架构进行开发,但是它自己的系统没有 【参考方案1】:

不,Drupal 遵循 PAC (Presentation-Abstraction-Control) 模型,而不是 MVC。 Larry Garfield's site 上有一篇很棒的博文对此进行了解释。

【讨论】:

【参考方案2】:

Drupal 8 现在包含Symfony 组件。因此,这意味着虽然 Drupal 8 应用程序不是一个整体的 MVC 框架/CMS,但 Drupal 8 模块是在 MVC 模式中实现的,其中包含用于视图的控制器、路由和 Twig 模板。

【讨论】:

是的,Drupal 8 使用了 Twig,一个 Symfony 项目,但是所有使用 Twig 的东西——不仅是模块,而且 Drupal 核心的主题引擎也是——在 Drupal 8 中使用了一些 MVC。这里有更多权威链接:drupal.org/docs/8/theming/twigsymfony.com/doc/current/introduction/… 编辑:请忽略我之前评论的第一部分,因为 Drupal 核心卸载到主题引擎,因此不包括 MVC 模式。谢谢!【参考方案3】:

不,它没有。 但是,您可以使用 mvc 架构开发软件,甚至还有一些模块可以帮助您实现这一点,但它自己的系统却没有。未来可能会。

但是 drupal 的一些基本概念,例如钩子,与 mvc 范例相冲突

【讨论】:

【参考方案4】:

不,drupal 根本不是 MVC 框架。

【讨论】:

以上是关于Drupal 是不是符合 MVC 范式?的主要内容,如果未能解决你的问题,请参考以下文章

Drupal 7 列出当前用户所属的有机组

如何在视图过滤器中使用标记 - Drupal 7

aliyun 主机Nginx 上配置Drupal 伪静态

范式的例子

对mysql建表三范式的理解

数据库——范式