使用datatables插件的记录加载速度非常慢,我该如何更快?

问题描述 投票:0回答:1

几天来我一直在尝试加载单个查询的内容,我已经直接在服务器端和服务器客户端尝试了这两种方法,但两者都无法正常工作。

当前充电时间大约为一分钟。

我已经合并了“ scroller”插件,但需要同样的方法,有人可以帮助我,我将代码留在这里,使用php和codeigniter 3。

JS

var table = $('#datatabletransaction').DataTable({
"deferRender":    true,
"scrollY":        500,
"scroller":       true,
"responsive": true,
"processing": true,
"fixedHeader": true,
"serverSide":true,
    "lengthMenu": [[5, 10, 25, 50, -1], [5, 10, 25, 50, "Todos"]],
    "ajax": {
        "url": mostrarcontenido,
        "type": "POST"
},       
language": {
      "url": "http://cdn.datatables.net/plug-ins/1.10.16/i18n/Spanish.json"
},
"fixedColumns": true,
"iDisplayLength": 5,
"order": [[ 2, "desc" ]]
});

CONTROLLER

public function mostrartablatransaccionestelefonos(){
  $this->load->model('tablas_model');
  $data = array();
  $list = $this->tablas_model->mostrar_registros_ventacompra($estado);
  foreach ($list as $person) {
      $row = array();
      $row[] = $person->num_factura;
      $row[] = $person->num_albaran;
      $row[] = $person->transacion;
      $row[] = $person->imei;
      $row[] = $person->nombre;
      $row[] = $person->fecha_registro;
      $row[] = $person->modelo;
      $row[] = $person->marca;
      $row[] = $person->color;
      $row[] = $person->memoria;
      $row[] = $person->precio_iva;
      $row[] = $person->precio_sin_iva;

      $output = array(
              "data" => $data,
      );
      echo json_encode($output);

}

查询范围很广,但我将查询返回的响应时间(由HeidSql进行。)>

我已经在HeidiSql中执行了查询,这就是结果/ *受影响的行:0找到的行:1.816警告:0进行1次咨询的持续时间:0.047秒。 * /

查询不会花费半秒钟。但是如何使它更快地加载数据?

我尝试了这些选项,但没有结果:

https://datatables.net/extensions/scroller/examples/initialisation/server-side_processing.html

https://datatables.net/extensions/scroller/examples/initialisation/large_js_source.html

我几天来一直在尝试加载单个查询的内容,我已经直接在服务器端和服务器客户端尝试了这两种方法,但两者都无法正常工作。当前的充电时间...

datatable record
1个回答
0
投票

我认为您的控制器有故障。

© www.soinside.com 2019 - 2024. All rights reserved.