3

在 ColdFusion 版本 9 中,我在 Index.cfm 中有以下内容:

<cfdump var="#Application#">

但我唯一得到的是一个带有应用程序名称的结构 - 没有其他变量,如 rootPath、mappings 或 customTagPath。

这是我在 Application.cfc 中的内容:

<cfcomponent output="false">
<cfset this.name = left("App_#hash(getCurrentTemplatePath())#",64)>
<cfset this.applicationTimeout = createTimeSpan(0,8,0,0)>
<cfset this.sessionManagement=True>
<cfset this.loginStorage = "session">
<cfset this.clientManagement = False>
<cfset this.setClientCookies = True>
<cfset this.setDomainCookies = False>
<cfset this.scriptProtect = "all">
<cfset this.rootPath = getDirectoryFromPath(getCurrentTemplatePath())>
<cfset this.mappings = this.rootPath>
<cfset this.customTagPaths = "#this.rootPath#Components">
4

1 回答 1

5

那是因为这些设置不在应用程序范围内。您混淆了应用程序设置与应用程序值。如果您希望它们在 Application 范围内可用,您可以简单地在 onApplicationStart() 中设置它们。当然,您也可以通过 This 范围查看它们,因此您可以在那里复制值。

于 2010-03-11T14:11:35.290 回答