我正在Laravel 5.4中编写一些内容,并且我希望在服务器端实现一个用户表,因为该表太大而无法加载到内存中。
我希望在服务器端进程中隐藏记录的ID。目前服务器脚本是:
$table = 'users';
$primaryKey = 'id';
$columns = array(
array('db' => 'id', 'dt' =>0),
array( 'db' => 'name', 'dt' => 1 ),
array( 'db' => 'email', 'dt' => 2 ),
array( 'db' => 'directline', 'dt' => 3 ),
array( 'db' => 'active', 'dt' => 4)
);
// SQL server connection information
$sql_details = array(
'user' => 'XXXX',
'pass' => 'XXXX',
'db' => 'XXXX',
'host' => 'localhost'
);
require( 'ssp.class.php' );
echo json_encode(
SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns )
);
我的观点目前显示:
<table id="thetable" class="table" align="center">
<thead>
<tr>
<th>id</th>
<th>Name</th>
<th>Email</th>
<th>direct line</th>
<th>active</th>
</tr>
</thead>
</table>
文件数据表的脚本是
$(document).ready(function() {
$('#thetable').DataTable( {
dom: 'lBfrtip',
"iDisplayLength": 20,
"lengthMenu": [ 10, 20,30, 50, 75, 100,200 ],
buttons: [
'copy', 'print',
{extend: 'excel',
filename: 'users', footer:true},
{extend: 'pdf',
filename: 'users'},
{extend:'csvHtml5',
filename: 'users'},
{extend: 'collection',
text: 'columns',
buttons:['columnsVisibility'] }
],
columnDefs: [
{'orderable':false, "targets":2 },
{"targets": [4],
"render": function ( data, type, full, meta ) {
if(data == 1)
{return '<span style="color: green"><i class="fa fa-check"> </i></span>'; }
else
{return '<span style="color: red"><i class="fa fa-times"> </i></span>'; }
}
},
],
"processing": true,
"serverSide": true,
"ajax": "{{ asset('/ajax/server_users.php') }}"
} );
} );
基本上我想隐藏ID列。
答案 0 :(得分:0)
使用columns.visible
选项启用或禁用指定列的显示。
例如:
'columnDefs': [
{ 'targets': 0, 'visible': false },
// ... skipped ...
]
答案 1 :(得分:0)
我在datatables网站上挖掘了一下,我发现这是从服务器端脚本添加到返回的项目中的:
array(
'db' => 'id',
'dt' => 'DT_RowId',
'formatter' => function( $d, $row ) {
// Technically a DOM id cannot start with an integer, so we prefix
// a string. This can also be useful if you have multiple tables
// to ensure that the id is unique with a different prefix
return 'row_'.$d;
}
),
这会自动将字段ID添加为可以使用的DT_RowId,因此可以从表本身中删除它,但是为链接引用等等。