get json data :
public function get(Request $request){
$columns = array(
0 => 'id',
1 => 'name',
2 => 'guard_name',
3 => 'permissions',
4 => 'action',
);
$totalData = Role::where('name', '!=', 'super-admin')->count();
$limit = $request->input('length');
$start = $request->input('start');
$order = $columns[$request->input('order.0.column')];
$dir = $request->input('order.0.dir');
if(empty($request->input('search.value'))){
$roles = Role::where('name', '!=', 'super-admin')->offset($start)
->limit($limit)
->orderBy($order,$dir)
->get();
$totalFiltered = Role::where('name', '!=', 'super-admin')->count();
}else{
$search = $request->input('search.value');
$roles = Role::where('name', '!=', 'super-admin')->where('name', 'like', "%{$search}%")
->offset($start)
->limit($limit)
->orderBy($order, $dir)
->get();
$totalFiltered = Role::where('name', '!=', 'super-admin')->where('name', 'like', "%{$search}%")
->count();
}
$data = array();
if($roles){
foreach($roles as $value){
$nestedData['id'] = $value->id;
$nestedData['name'] = $value->name;
$nestedData['guard_name'] = $value->guard_name;
foreach ($value->permissions as $item) {
$nestedData['permissions'][] = $item->name;
}
$nestedData['action'] = "<a href='#edit' class='btn btn-warning'>Sync</a>";
$data[] = $nestedData;
}
}
$json_data = array(
"draw" => intval($request->input('draw')),
"recordsTotal" => intval($totalData),
"recordsFiltered" => intval($totalFiltered),
"data" => $data
);
the output "permissions" always contains commas ","
example : "delete-posts,edit-posts,create-posts,manage-posts".
#question : how to change that commas into other letter ? using implode() ?
from : "delete-posts,edit-posts,create-posts,manage-posts".
to : delete-posts | edit-posts | create-posts | manage-posts.