当我尝试使用Application.cfc中定义的数据源在index.cfm中启动简单的select查询时,它会显示一条错误消息。有人能帮我确定正确的代码序列吗?
错误:
变量PRIMARYDATASOURCE未定义
应用程序.cfc
<cfcomponent>
<!--- Set up the application. --->
<cfscript>
this.name = ""; // app name from old cfapplication tag
this.sessionManagement = "Yes";
this.loginstorage="session";
this.setClientCookies = "Yes";
this.primarydatasource = "diet";
application.PRIMARYDATASOURCE = "diet";
</cfscript>
<cfsetting requesttimeout="100000" />
<cffunction name="onApplicationStart">
....
<cfquery datasource="#application.PRIMARYDATASOURCE#" name="getCostDetails">
select * from maimun.adCostDetails ORDER BY ID DESC
</cfquery>
....
</cffunction>
</cfcomponent>
将行application.PRIMARYDATASOURCE = "diet";
移到onApplicationStart
函数并删除行this.primarydatasource = "diet";
。完成。
放在Application.cfc
主体中的代码并没有按照你想象的方式执行。只有在应用程序初始化后,你才能访问application
作用域,而onApplicationStart
就是其中的事件。将其视为web应用程序的构造函数。