我有几个地方有这样的代码:
<cfinvoke component="#application.path#cfc/eval_faculty" method="getPresentations" returnvariable="presentations">
<cfinvokeargument name="id" value="#eval_id#">
<cfinvokeargument name="evalYear" value="#eval_semester#">
<cfinvokeargument name="department" value="#general.dept#">
</cfinvoke>
<cfset prescheck = 0>
<cfloop query="presentations">
<cfif local eq "" and regional eq "" and national eq "" and international eq "">
<cfset prescheck = prescheck+1>
</cfif>
</cfloop>我得到了这个错误:
Complex object types cannot be converted to simple values.cfif语句中的这些值都不是复杂对象。
这在ColdFusion 8中运行良好。我们刚刚升级到ColdFusion 9...
错误发生在包含<cfif local eq "" ... >的行上
有什么想法吗?
发布于 2012-02-08 03:25:45
本地eq "“
可能LOCAL现在是CF9中的一个系统作用域,就像FORM、URL等。因此,当您尝试对它执行字符串比较时,CF会报错,因为它是一个结构。如果LOCAL在旧代码中表示一个简单的变量,请尝试使用不同的变量名。
SQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdateSQLUpdate:在注释中,如果LOCAL是查询中列的名称,则可以使用别名为它指定另一个名称:
SELECT Local AS LocalAlias FROM Table..。或者使用完全限定的变量名:
<cfif queryName.local ...>https://stackoverflow.com/questions/9182464
复制相似问题