Я использую DataTable для отображения данных.
Я не знаю make
метод. Как это работает?
Я использую опцию addColumn, чтобы добавить кнопку Action, и make(true)
не работает, но make(false)
в порядке!?.
Контроллер
$business_id = request()->session()->get('user.business_id');
$locations = BusinessLocation::where('business_locations.business_id', $business_id)
->with('bCountry')
->with('bState')
->with('bCity')
->with('bWard')
->leftjoin(
'invoice_schemes as ic',
'business_locations.invoice_scheme_id',
'=',
'ic.id'
)
->leftjoin(
'invoice_layouts as il',
'business_locations.invoice_layout_id',
'=',
'il.id'
)
->select('business_locations.name', 'location_id', 'landmark', 'ward', 'city',
'zip_code', 'state',
'country', 'business_locations.id', 'ic.name as invoice_scheme', 'il.name as invoice_layout');
$permitted_locations = auth()->user()->permitted_locations();
if ($permitted_locations != 'all') {
$locations->whereIn('business_locations.id', $permitted_locations);
}
return Datatables::of($locations)
->addColumn(
'action',
'<button type="button" data-href="{{action(\'BusinessLocationController@edit\', [$id])}}"
class="btn btn-xs btn-primary btn-modal" data-container=".location_edit_modal">
<i class="glyphicon glyphicon-edit"></i> @lang("messages.edit")</button>
<a href="{{route(\'location.settings\', [$id])}}" class="btn btn-success btn-xs">
<i class="fa fa-wrench"></i> @lang("messages.settings")</a>
')
->editColumn('country', function ($locations) {
return $locations['bCountry']['name'];
})
->editColumn('state', function ($locations) {
return $locations['bState']['name'];
})
->editColumn('city', function ($locations) {
return $locations['bCity']['name'];
})
->editColumn('ward', function ($locations) {
return $locations['bWard']['name'];
})
->removeColumn('id')
->rawColumns(['10'])
->make(false);
JS
var business_locations = $('#business_location_table').DataTable({
processing: true,
serverSide: true,
bPaginate: false,
buttons: [],
ajax: '/business-location',
// column: [
// { data: 'country' },
// { data: 'state' },
// { data: 'city' },
// { data: 'ward' },
// { data: 'action' },
// ],
columnDefs: [
{
targets: 10,
orderable: false,
searchable: false,
},
],
});
Когда я создаю связь, но в поле Action возникает ошибка [Object Object].
Когда нет отношений, все работало нормально!
Есть какие-нибудь решения? Большое спасибо!