出于某种原因,一段代码在*.cfm
页面上运行良好,并且在 a中运行良好*.cfc
,现在在检测到错误时抛出错误。
错误是:
Element SQL is undefined in CFCATCH.
被抛出的代码块如下所示:
<cfcatch type="database">
<cfset errorMessage = "
<p>#cfcatch.message#</p>
<p>Please send the following to a developer:</p>
<p>#cfcatch.SQL#</p> <--- ERROR HERE
<p>#cfcatch.queryError#</p>
<p>#cfcatch.Where#</p>">
some other stuff
</cfcatch>
有什么想法吗?
更新
使用@BenKoshy 的建议,我修改了我的<cfcatch>
声明。
还记得KISS吗?保持简单愚蠢
使用他的方法然后对其进行修改,我得到的数据比我打算使用的要多,所以我选择了一个简单的版本,它像宣传的那样工作。
<cfif isDefined("cfcatch.message")>
<cfset errorMessage = errorMessage & "<p>#cfcatch.message#</p>">
</cfif>
<cfif isDefined("cfcatch.SQL")>
<cfset errorMessage = errorMessage & "<p>Please send the following to a developer:</p><p>#cfcatch.SQL#</p>">
</cfif>
<cfif isDefined("cfcatch.QueryError")>
<cfset errorMessage = errorMessage & "<p>#cfcatch.queryError#</p>">
</cfif>
<cfif isDefined("cfcatch.Where")>
<cfset errorMessage = errorMessage & "<p>#cfcatch.Where#</p>">
</cfif>
又好又简单,而且很有效。吻