如何在show laravel视图中使用Yajra创建数据表?

时间:2020-05-03 22:26:50

标签: laravel datatables yajra-datatable

我有相关的模型请求:M个任务,我想在请求的显示视图中显示带有yajra的数据表>,也就是说,如果我使用 id = 1 进入请求的显示视图,它将向我显示仅填充与请求相关的任务的数据表< strong> id = 1 ,我尝试从控制器的 show函数返回数据表,但我不知道如何仅获取相关任务的要求。

无论如何,我不知道这是否有用,但是,这就是我如何为任务索引创建数据表的方法:

    public function taskData()
    {
    $tasks = Task::join('requests', 'requests.id', '=', 'tasks.request_id')
                    ->select('tasks.id', 'requests.code_request', 'tasks.fake_id',
                            'tasks.date');

    return Datatables::of($tasks)
            ->addColumn('btn', 'tasks.actions')
            ->rawColumns(['btn'])
            ->make(true);
    }

然后在我看来:

<script>
   $(function() {
      $(document).ready(function(){
         // initializing Datatable
             var table = $("#tareas-table").DataTable({
                serverSide: true,
                pageLength: 10,
                ajax: '{!! route('datatables.tareas') !!}',
                columns: [
                   { data: 'fake_id', name: 'tareas.fake_id' },
                   { data: 'codigo_solicitud', name: 'solicituds.codigo_solicitud' },
                   { data: 'fecha_inicio', name: 'tareas.fecha_inicio' },
                   { data: 'estado', name: 'tareas.estado'  },
                   { data: 'btn', name: 'btn',orderable:false,serachable:false,sClass:'text-center' }
               ]
           });
        });
 </script>

谢谢

1 个答案:

答案 0 :(得分:0)

您可以使用DataTableScopeContract

文档中有一个示例:https://datatables.yajrabox.com/services/scope