在工作中,我们使用每个网页使用物理文件的旧CMS。 CMS使用ColdFusion作为服务器端语言。页面来自模板,您可以从模板创建模板。这实际上允许以一种很好的方式进行粒度分析。但是,我已经看到,如果我们可以让页面本身成为数据库记录,我们可以消除页面创建的需要,类似于WordPress所做的。
以下是我尝试实现此操作时的约束...页面可以在本地添加元素。因此,如果我们使用模板A创建第1页,它将继承模板A的所有元素以及模板的所有配置。但是,在第1页上,在创建它之后,我可以手动将一个元素直接添加到该页面(使用CMS GUI),该元素只驻留在该页面上。我看到它的方式,如果我尝试为我们的CMS实现MVC框架,那么任何时候我们都想在页面中添加一个本地元素,这将构成对新“页面类型”的需求。元素被配置为“本地数据”并通过页面ID绑定到页面,或者被配置为“全局数据”,其呈现查询的结果并且不一定仅与该元素所在的页面相关联。目前开启(可以多页使用)。
这是一个很大的问题,我试图以最简洁的方式提出问题和方案。我不是在寻找如何实现MVC perse,而是如何实现MVC,因为CMS的数据库本身如何工作的限制。
我看到解决这个问题的另一种方式是在我创建的MVC框架中创建“创建页面”的新方法我可以通过包含在页面记录中添加元素的能力来解决这个问题 - 如果这是有道理的。
思考?非常感谢任何建议或帮助。
答案 0 :(得分:2)
为什么有那么多现代CMS程序从头开始创建一个新的应用程序要么做你想做的事情,你有能力通过自定义编程(通常是一个插件系统)添加你想要的功能?
基于MVC的现代CMS,在ColdFusion上运行:
当然,如果你不想再使用ColdFusion,Wordpress也可以做你想要的,但我建议你在花费 一分钟之前对这些应用程序进行一些调查 试图重新发明轮子。