Я создаю приложение панели администрирования с помощью Codeigniter и хотел бы получить мои записи участников с помощью метода обработки на стороне сервера jQuery DataTables (так как у меня довольно большое количество членов записи). Я использую библиотеку CI Ignited DataTables для извлечения и попыток отображения моих данных. Я смог получить эту работу с автономной версией Datatables Server Side Implementation, найденной here, но хотел бы, чтобы эта работа работала с CodeIgniter, чтобы быть в соответствии с остальной частью моего приложения. Вот мой код до сих пор:jQuery DataTables с Codeigniter, не отображающий данные
CI Контроллер:
$this->load->library('DataTables');
$this->load->model('table_model', 'table');
$this->datatables->select('member_id, username,email, first_name, last_name')
->from($this->table->getTable('members'))
->join($this->table->getTable('groups'), 'members.group_id = member_groups.group_id', 'left')
->select('group_title');
echo $this->datatables->generate();
exit;
HTML:
<table id="members">
<thead>
<tr>
<th>Member ID</th>
<th>Username</th>
<th>Email</th>
<th>First Name</th>
<th>Last Name</th>
<th>Group Name</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="7" class="dataTables_empty">Loading members...</td>
</tr>
</tbody>
</table>
JQuery:
$(document).ready(function() {
$("#members").dataTable({
"bProcessing" : true,
"bServerSide" : true,
"sAjaxSource" : "/members/fetch_members",
"sPaginationType" : "full_numbers"
});
});
JSON ответ:
{
"sEcho": 0,
"iTotalRecords": 11007,
"iTotalDisplayRecords": 11007,
"aaData": [ //member records here],
"sColumns": "member_id,username,email,first_name,last_name,group_title"
}
Любая помощь будет оценена!
11007 записей довольно много, нет? Вы пробовали тестировать его с меньшим количеством (скажем, 100)? Это может привести к перегрузке данных. – Seabass
Я понял это ... библиотека IgnitedDataTables проверяла только данные $ _POST, и мой скрипт отправлял параметры как $ _GET data. Я изменил библиотеку, чтобы проверить как входные потоки (вход 'this this>> ci-> -> get_post() '). Надеюсь, это поможет другим людям, которые застряли в дороге. –
@EricPaulsen: Не стесняйтесь публиковать (и принимать) свой ответ ниже в интересах будущих посетителей. –