Встроенные переменные Application.cfc
-
19-09-2019 - |
Вопрос
В ColdFusion версии 9 в Index.cfm есть следующее:
<cfdump var="#Application#">
Но единственное, что я получаю, — это структуру с именем приложения — никаких других переменных, таких как rootPath, сопоставления или 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">
Решение
Это потому, что эти параметры не входят в область приложения.Вы путаете приложение настройки по сравнению со значениями приложения.Если вы хотите, чтобы они были доступны в области приложения, вы можете просто настроить их в onApplicationStart().Конечно, вы также можете увидеть их через эту область, поэтому копируете значения туда.
Не связан с StackOverflow