老实说,这些框架很容易导致分析瘫痪。你很容易过度思考事情。这就是你要做的,保持简单,然后敲击键盘。使用您的“自己的”框架。它可能不漂亮,但你最终会得到它,你会明白为什么存在其他框架。
以下是您的开始方式:
创建文件夹布局和视图。将您所有的页面布局内容放在布局文件夹中(您可能只有几个甚至一个布局)!将您所有的视图内容放在视图文件夹中(这可能看起来像您对一堆组织不太好的文件所做的那样)。关键是您的视图文件中不会有任何页面处理“页面顶部”代码。
您的 index.cfm 将是唯一的 .cfm 根目录。使用 URL 变量 "event" = action 使您的框架运行。
在您的 index.cfm 中,使用一个巨大的 cfswitch 来确定要执行哪个“页面顶部”代码(这将是一个巨大的“控制器”)。
mysite.com/index.cfm?event=contactInfo
<cfswitch expression="#url.event#">
<cfcase value="contactInfo">
<top of page code>
<cfset structLayoutInfo["pagetitle"] = "XYZ Contact Info" />
<cfmodule template="/layouts/mainlayout.cfm" attributeCollection="#structLayoutInfo# >
<cfinclude template="/views/contactInfo.cfm"/>
</cfmodule>
</cfcase>
.....
</cfswitch>
将此与 cfmodule 标记结合使用以加载您的布局。因此,您的所有页面请求都通过 index.cfm 进入。Index.cfm 将完成所有页面顶部的内容,然后对视图文件夹中的适当视图执行 cfinclude。使用 cfmodule 标签来加载你的布局(查看 tag.execution 模式的页眉和页脚内容)。
您将继续向您的框架添加功能和功能。您可能会将 index.cfm 代码移动到一个控制器文件夹,其中包含一堆调用您的数据库 CFC 的 CFC。