json - 如何将 HAL JSON 数据转换为 jQuery DataTables 的 JSON 数组

标签 json datatables laminas-api-tools

我需要 JSON 数组格式的输出数据才能与 jQuery DataTables 一起使用,但我的 Apigility API 提供了 HAL+JSON。如何转换它以便我可以将它从 API 的 fetchAll 方法传递到 Datatables 的 AJAX URL?

这是 HAL+JSON 的样子:

{"_links":{"self":{"href":"http:\/\/parekh.com\/exportmanager\/courses"}},"_embedded":{"courses":[{"Module Title":"Preventing Harassment","Module ID":"HUR602","Module Language":"English"},{"Module Title":"Conflict","Module ID":"COM236","Module Language":"Dutch"},{"Module Title":"Workplace","Module ID":"HUR711","Module Language":"Dutch"}]},"total_items":3}

最佳答案

SOLUTION

无需转换数据格式,当使用正确的选项时,jQuery DataTables 能够读取复杂的结构。

使用ajax.dataSrc用于定义表和columns.data数据源的选项为每列设置数据源的选项。

var table = $('#example').DataTable({
    ajax: {
        url: 'https://api.myjson.com/bins/3ebaq',
        dataSrc: '_embedded.courses'
    },
    columns: [
        { data: 'Module Title' },
        { data: 'Module ID' },
        { data: 'Module Language' }
    ]
});

DEMO

参见this jsFiddle用于代码和演示。

关于json - 如何将 HAL JSON 数据转换为 jQuery DataTables 的 JSON 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33013284/

相关文章:

php - 如何按照 Apigility 方式验证嵌套数据?

java - 如何将类中的静态变量转换为json

json - 如何使用 JsonFormat 反序列化 Jackson Json NULL 字符串

PHP - MySQL 请求 - 未找到数据

javascript - 如何将用户名和 ID 与命令分开?

html - 数据表标题未对齐

javascript - 为什么数据表会添加新记录并保留旧记录?

javascript - jQuery DataTable 响应式不适用于 Bootstrap 3

php - 限制 Apigility 中的结果

php - ZF2 apigility - 我们如何验证 json 数据中的集合