Пакет DataTable Yajra передает дополнительные данные для добавления столбца - PullRequest
0 голосов
/ 13 апреля 2020

В настоящее время у меня есть три таблицы на одной странице, которые все отображаются с помощью пакета yajra- laravel -datatables. Все три таблицы данных содержат дополнительный столбец для отображения действий, которые можно выполнить с каждой моделью. То, что я хочу сделать, это передать массив действий для каждого столбца действия с датируемыми данными, чтобы в ячейке `users.partials.action если выполнялись только проверки действий для этого объекта с данными.

  • DataTable A - Занятые пользователи - просмотр, редактирование, удаление, запуск и т. Д. c.
  • DataTable B - Уволенные пользователи - просмотр, редактирование, удаление, перенос и др. c.
  • DataTable C - Пенсионеры - просмотр, редактирование, удаление, повторная аренда

Используя приведенную выше информацию, я хочу иметь возможность передавать только эти действия для каждого класса DataTable.

@can('view', $model)
    <x-buttons.view :route="route('users.show', $model)" />
@endcan

@can('update', $model)
    <x-buttons.edit :route="route('users.edit', $model)" />
@endcan

@can('delete', $model)
    x-buttons.delete :route="route('users.destroy', $model)" />
@endcan

@if ($actions->contains('fire'))
    @if($model->canBeFired())
        <x-buttons.fire :route="route('users.fire', $model)" />
    @endif
@endif
... //More actions to check on
public function dataTable($query)
{
    return datatables($query)
        ->addColumn('action', 'users.partials.action-cell');
}
...