我们有四种不同的环境:dev、q/a、test 和 prod。我决定将我们转换Application.cfm
为Application.cfc
并将它们放入我们的源代码控制中。有很多应用程序变量对每个环境都有不同的值。
我最终创建了几个 sql server 表来根据它们的类型存储这些环境变量。现在,我正在动态设置这些应用程序变量。
我的问题是我开始在 application.cfc 中添加自定义方法。我不是 100% 确定这是否是最好的地方。[例如:getAppLinks()、setAppLinks()]。否则,我可以创建一个新的 cfc 并从Application.cfc
.
所有这些方法当前都在方法中被调用一次onApplicationStart()
。
有人对在中实现自定义方法有任何意见Application.cfc
吗?
谢谢
编辑:添加了一个自定义方法:
<cffunction name="setUpAppDSNs" access="private" returnType="void" output="false">
<cfargument name="dsn" type="string" required="yes">
<cfargument name="serverName" type="string" required="yes">
<cfscript>
var dsnNames = structNew();
var qryAppDSNs = new Query(dataSource = '#arguments.dsn#',
sql = ' SELECT dsnID, #arguments.serverName#Server, description
FROM cfAppDSN ').execute().getResult();
for (i = 1; i lte qryAppDSNs.recordCount; i++) {
dsnNames['#qryAppDSNs.description[i]#'] = qryAppDSNs['#serverName#Server'][i];
}
StructAppend(application,dsnNames);
</cfscript>
</cffunction>