两者是完全不同的概念吗?还是它们的含义有重叠?
说 Web 框架用于创建前端,而 CMS 用于后端是否正确?
如果是,那么 Web 框架是否应该使用与 CMS 相同的技术?例如,Ruby on Rails 可以与 Drupal 结合使用吗?或者这根本没有任何意义?
最佳答案
两者是完全不同的概念吗?还是它们的含义重叠?
Web(应用程序)框架是用于开发 Web 应用程序的较低级别的通用工具包。这可以是任何类型的系统管理和处理数据,同时将其数据和服务公开给人类用户(通过 Web 浏览器和其他交互式客户端)以及通过 http 协议(protocol)的机器。
CMS 是此类应用程序的一种:用于管理网站中显示的内容的系统。通常/历史上,这主要意味着管理网站中显示的“页面”的(部分)文本,以及具有不同访问级别的用户来管理这些内容。这就是 C 和 M 的来源。
使用 CMS,您可以管理 Web 内容。使用 Web 框架,您可以构建 Web 应用程序。
说 Web 框架用于创建前端,而 CMS 用于后端是否正确?
不。说可以使用 Web 框架来创建 CMS 是正确的。
两者都包含在后端和前端工作的部分。
通常,CMS 基于 Web 框架 - 有时 CMS 开发人员会构建自己的 Web 框架,有时他们甚至会公开该框架的 API,因此开发人员可以像开发应用程序一样创建 CMS 扩展带有网络框架。 Drupal 确实做到了这一点,因此您可以基于集成框架创建真正的 Web 应用程序 - 好处是它们也很容易集成到 CMS 中。
但这(暴露 Web 框架的 API)并不是被称为 CMS 的必要标准。
如果是,那么 Web 框架是否应该使用与 CMS 相同的技术?例如,Ruby on Rails 可以与 Drupal 结合使用吗?或者这根本没有任何意义?
可以将两个现有系统构建与这两个结合起来,(例如,因为您想在一个由 drupal 管理的网站中显示一些数据,这些数据已经存在于基于 Rails 的系统中)。
但由于 Drupal 还为您提供了它的底层 Web 框架的一些通用功能,因此可能没有必要。您将不得不管理和学习两个非常不同的系统,并通过它们的互操作处理所有问题。所以,如果可能的话,我会尝试只用其中一个来构建一个网站,并且只有在有充分理由的情况下才将它们组合起来。
关于drupal - Web 应用程序框架和内容管理系统之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1636259/