queryformat和Railo

时间:2014-02-13 00:17:44

标签: ajax railo

如果我还没有在文档中找到它,请道歉......

问:如何在Railo中更改ajax调用的查询格式? 这是我的组成部分:

component {

    remote function Read() returnformat='json' {
        svc = new Query();
        svc.setSQL("SELECT * FROM INFORMATION_SCHEMA.TABLES");
        obj = svc.execute();
        local.result.Prefix = obj.getPrefix();
        local.result.qry = obj.getResult();
        url.queryFormat = "column";
        return local.result;
    }
    }

这是我的JavaScript:

(function() {
    var local = {};

    local.type = 'POST';
    local.url = 'AJAX.cfc';
    local.dataType = 'json';
    local.data = {};
    local.data.method = 'Read';
    local.Promise = $.ajax(local);
    local.Promise.done(done);
    local.Promise.fail(fail);

    function done(response) {
        console.log(response);
        debugger;
    }
    function fail(xhr,status,response) {
        debugger;
    }
})();

我要回的是:

response.qry.DATA[] // 57 arrays, each of length 4

但是ColdFusion返回了这个,我喜欢使用它(能够使用列名而不是数组位置):

response.qry.DATA.TABLE_CATALOG[] // An array of 57 elements
response.qry.DATA.TABLE_SCHEMA[]
response.qry.DATA.TABLE_NAME[]
response.qry.DATA.TABLE_TYPE[]

1 个答案:

答案 0 :(得分:3)

对函数使用ReturnFormat =“plain”,并对serializeJson()的第二个参数传递true

serializeJson(Query, true)

这将为您提供一个由Column序列化的JSON对象,因此您可以返回它。