1

У меня возникли проблемы с сериализацией CakePHP и загрузочными столами. Я загрузил все .js. Я думаю, что загрузочные столы не переконфигурируют { "despesas":[ перед .json Может кто-нибудь мне помочь?CakePHP Ошибка начальной загрузки

Мой route.php

//code  
Router::extensions(['json']); 
//code 

мой DespesasController.php функция

//code 
     public function test() 
    { 
     $this->paginate = [ 
      'contain' => ['Lojas', 'DespesaTipos'], 
      'limit' => '1000000000' 
     ]; 
     $this->set('despesas', $this->paginate($this->Despesas)); 
     $this->set('_serialize', ['despesas']); 
    } 
//code 

test.ctp

<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.9.1/bootstrap-table.min.css"> 



<table id="table"></table> 

<!-- Latest compiled and minified JavaScript --> 
<script src="//code.jquery.com/jquery-1.11.3.min.js"></script> 
<script src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.9.1/bootstrap-table.min.js"></script> 

<!-- Latest compiled and minified Locales --> 
<script src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.9.1/locale/bootstrap-table-pt-BR.min.js"></script> 
<script type="text/javascript"> 
    $('#table').bootstrapTable({ 
    url: 'test.json', 
    columns: [{ 
     field: 'id', 
     title: 'Item ID' 
    }, { 
     field: 'descricao', 
     title: 'Item Name' 
    }, { 
     field: 'valor', 
     title: 'Item Price' 
    }, ] 
}); 
</script> 

test.json

{ 
    "despesas": [ 
     { 
      "id": 1, 
      "data": "2015-01-02T00:00:00-0200", 
      "descricao": "INTERNET TRIBUNA BAIRROS (50%)", 
      "valor": 1503, 
      "loja_id": 1, 
      "despesa_tipo_id": 1, 
      "obs": "", 
      "created": "2015-12-10T00:00:00-0200", 
      "modified": "2015-08-05T00:00:00-0300", 
      "criado_por": "Kelvin Primo", 
      "modificado_por": "Deise" 
     }, 

Когда я открываю его в браузере он возвращается.

No matching records found

ответ

1

Загрузите данные json перед созданием таблицы, затем вы можете передать ее в таблицу, как ей это нравится.

<script type="text/javascript">  
$(function() { 
    $.getJSON("test.json", function(data) { 
    $('#table').bootstrapTable({ 
     data: data.despesas, 
     columns: [{ 
     field: 'id', 
     title: 'Item ID' 
     }, { 
     field: 'descricao', 
     title: 'Item Name' 
     }, { 
     field: 'valor', 
     title: 'Item Price' 
     }] 
    }); 
    }); 
}); 
</script> 
+0

Uncaught TypeError: $ (...). BootstrapTable не является функцией. консоль. –

+0

https://jsfiddle.net/L0qkbxcd/1/ –

+0

О, убедитесь, что ваш код находится внутри $ (function() {CODE_HERE}); в противном случае он будет запущен до загрузки ваших скриптов. –

Смежные вопросы