如何将json文件发送到cakephp2.6中的dataTable

时间:2016-08-05 18:43:10

标签: javascript php jquery cakephp

Iam正在寻找为我的表单搜索部署dataTable以使用php的solarium客户端从Apache solr获取结果,并且对于每个结果我将其转换为JSON格式,如下所示:在我的动作搜索中:

public function search() {
    if($_POST){
    // get a select query instance
            $query = $client->createSelect()
                   ->setQuery($forsearch )
                   ->addParam('wt','json');
    // this executes the query and returns the result
                $resultset = $client->select($query);

                $this->response->body(json_encode($result));
    }
    }

如何发送json文件以查看此功能中的url:

$('.datatable-ajax-source table').dataTable({
                "processing": true,
               "serverSide": true,
                "ajax": {
                "url": "http://localhost/solr/users/search.json",

            });

我不能使用$ this-> autoRender = false;因为我需要从search.ctp输入forsearch来获得$ resulset

2 个答案:

答案 0 :(得分:0)

埃洛,伙计。 在控制器函数上,您必须将响应格式化为具有索引“data”的对象,并且该索引必须包含将包含将由Datatables显示的列表的列表,它必须如下所示:

{ 
    data: [
        [field, field, field, field],
        [field, field, field, field]........
    ]
} 

不要忘记implode()某些字段,在你的情况下,你必须implode()字段'competence_txt'使它成为一个字符串。

查看Datatables oficial website了解详情。

答案 1 :(得分:0)

在我的案例中,

This link非常有帮助。这个问题很接近。谢谢大家。