我正在处理以前使用cfquery的一些代码,现在正在使用绑定到cfc来获取数据。当它使用查询时,“workcomplete”列显示yes / no(这些是作为文本保存在数据库中的值)。现在它正在使用bind,该列显示true / false而不是yes / no。它们匹配,即如果数据库为“否”,则cfgrid显示“False”,“Yes”显示为“True”。是否有一些设置可以更改,以便它将再次使用数据库中的实际值?
来自cfml:
<cfform>
<cfgrid format="html" name="list" striperows="yes" fontsize="12" pagesize="25" selectmode="row" bind="cfc:joborder.getJoborders({cfgridpage},{cfgridpagesize},{cfgridsortcolumn},{cfgridsortdirection})">
<cfgridcolumn name="dispatchnum" header="Dispatch Num" href="job.cfml" hrefkey="jobid" width="100"/>
<cfgridcolumn name="submitdate" header="Submit Date" width="90">
<cfgridcolumn name="jobname" header="Job Name" width="200" >
<cfgridcolumn name="contactlast" header="Contact Last Name" width="150" >
<cfgridcolumn name="workcomplete" header="Completed" width="100" >
<cfgridcolumn name="jobid" header="Edit " href="jobedit.cfml" hrefkey="jobid" width="40" />
<cfgridcolumn name="editdate" header="Edit Date" width="80"/>
<cfgridcolumn name="jobid" header="DELETE" hrefkey="jobid" width="60" href="delete.cfml?jobid=url.jobid">
</cfgrid>
</cfform>
来自cfc:
<cffunction name="getJoborders" access="remote">
<cfargument name="page" required="yes">
<cfargument name="pageSize" required="yes">
<cfargument name="gridsortcolumn" required="yes">
<cfargument name="gridsortdirection" required="yes">
<cfif arguments.gridsortcolumn eq "">
<cfset arguments.gridsortcolumn = "dispatchnum" />
<cfset arguments.gridsortdirection = "desc" />
</cfif>
<cfquery datasource="jobs" name="joborders">
SELECT DISPATCHNUM, SUBMITDATE, WORKCOMPLETE, EDITDATE, JOBID, ORDERNUM, JOBNAME, CONTACTFIRST, CONTACTLAST
FROM JOBORDERS
<cfif gridsortcolumn neq ''>
order by #arguments.gridsortcolumn# #arguments.gridsortdirection#
</cfif>
谢谢!
答案 0 :(得分:2)
由于历史原因,“是”和“否”被CF视为布尔值。猜测一下,我希望CFGrid能够解释它们,并将它们翻译成更传统的版本。
我要尝试的第一件事是在文本的末尾添加一个句点(或者一些类似的小变换)。
的内容select workcompleted + '.' as workcompleted.....
但我目前无法访问我的CF服务器进行测试。让我知道它是如何运作的。