1

生の JSON を取り込み、DataTable に入力します。

問題は、ページネーションやソートなどが機能しないことです。

データベースから情報を取得するのではなく、実際には AWS からデータを取得しています。

AWS から --> キャッシュ ファイル --> JSON --> DataTables。

私のJSONは次のようになります:

{
"count": 332,
"data": [
  {
  "account": "NetOps",
  "architecture": "x86_64",
  "block_devices": [
    {
      "delete_on_terminate": true,
      "name": "/dev/sda1",
      "status": "attached",
      "volume_id": "vol-secret"
    }
  ],
  "ebs_optimized": false,
  "group_name": null,
  "hypervisor": "xen",
  "id": "i-secret",
  "instance_type": "m1.small"}
]} 

もちろん、実際の結果は 323 レコードを返します...

JSON Lint によると、JSON は有効な JSON です。

これが私がDataTablesに使用するものです:

<script>
  $(document).ready(function() {
  $('#ec2_table').DataTable({
            "serverSide": true,
            "ajax": '/ec2',
            "columns": [
        { "data": "id" },
        { "data": "name" },
        { "data": "architecture" },
        { "data": "instance_type" },
        { "data": "image_id" },
        { "data": "platform" },
        { "data": "state" },
        { "data": "account" },
                    ],
         "lengthMenu": [[10, 25, 50, 100, -1], [10, 25, 50, 100, "All"]],
            dom: 'T<"clear">lfrtip',
            tableTools: {
        "sSwfPath":    "/static/js/DataTables/extensions/TableTools/swf/copy_csv_xls_pdf.swf"
    }
    });
});

</script>

ページネーション、列の並べ替え、検索はすべて無効です。

私のJinja/HTMLは次のようになります。

<table id="ec2_table" class="order-column display compact" cellspacing="0"    width="98%">
  <thead>
    <tr>
          <th>ID</th>
          <th>Name</th>
          <th>Architecture</th>
          <th>InstType</th>
          <th>Image ID</th>
          <th>Platform</th>
          <th>State</th>
          <th>Account</th>
    </tr>
  </thead>
</table>
4

1 に答える 1