Sencha 2 -need帮助cf json数据(例如:CFJSONReader)

时间:2012-03-21 05:26:08

标签: coldfusion sencha-touch sencha-touch-2 coldfusion-9

我是sencha的新手,并使用sencha 2 mvc。我有一个cfc返回的json数据,我想在列表视图中使用它。我已经阅读了有关CFJsonReader和CFQueryReader的内容,但两者都是为EXt Js 3 x编写的。我无法在其他任何地方看到一个适用于sencha 2的mvc代码。我多次尝试,一切都是徒劳的。请一些帮助建议我/帮我解决我的问题......我的输出就像:

{"QUERY":{"COLUMNS":["CLIENTID"],"DATA":[[1013],[1010],[1016],[1017],[1013]]},"TOTALROWCOUNT":5}

商店的定义:

Ext.define('Mysample.store.clientsWithoutAgentOffers', {
     extend: 'Ext.data.Store',
     config: {
        autoLoad: true,
        model: 'BestHomePro.model.clientsModel',
        proxy: {
           type: 'ajax',
           url: '/sample/b.cfc?method=getClients',
           reader: cfReader
        }
     }
});

请帮帮我......

2 个答案:

答案 0 :(得分:0)

这里描述了适用于Sencha Touch 2的JSON格式:

Sencha Docs - JSON Reader

答案 1 :(得分:0)

我编写了这段代码来获得所需的JSon格式:

<cfset retVal = ''>
<cfset qResult = ''>

<cfquery name="qResult">
    <!--- any query here --->
</cfquery>

<cfset thisArrayBecomesJSON = [] />

<cfloop query="qResult">
    <cfset thisArr = {
    "text"= "#qResult.id#, #qResult.description#",
    "value"= "#qResult.id#"
} />
    <cfset arrayAppend( thisArrayBecomesJSON, thisArr ) />
</cfloop>

<cfoutput>#serializeJSON( thisArrayBecomesJSON )#</cfoutput>

注意:如果您想将此JSon用于SelectField,则必须在其中包含“text”和“value”元素。

你可以为此组成一个功能。该函数应该获取一个对象并返回其Sencha Supported JSon。如果你编写了一个函数,请与他人分享。

由于