Search code examples
laravelyajra-datatable

Laravel yajra-datatable select where in datatable


I want to select all rows in datatable where inst_id = ?, this is my code

if(request()->ajax()) {
        return datatables()->of(Domain::select([
            'id', 'domain', 'logo', 'description', 'created_at'
        ]))
        ->addIndexColumn()
        ->addColumn('action', function($data){

               $btn = '<a href="" data-toggle="tooltip" data-original-title="Edit" class="edit btn btn-primary btn-sm">Edit</a>';

               $btn = $btn.' <a href="javascript:void(0)" data-toggle="tooltip"  data-id="" data-original-title="Delete" class="btn btn-danger btn-sm deleteTodo">Delete</a>';

                return $btn;
        })
        ->rawColumns(['action'])
        ->make(true);
    }
    return view('functions/study/domain');

Solution

  • You can add whatever queries you want with the base query

    $id = 1;
    if(request()->ajax()) {
            return datatables()->of(
                Domain::select([
                    'id', 'domain', 'logo', 'description', 'created_at'
                ])
                ->where('inst_id', $id)
            )
            ->addIndexColumn()
            ->addColumn('action', function($data){
    
                   $btn = '<a href="" data-toggle="tooltip" data-original-title="Edit" class="edit btn btn-primary btn-sm">Edit</a>';
    
                   $btn = $btn.' <a href="javascript:void(0)" data-toggle="tooltip"  data-id="" data-original-title="Delete" class="btn btn-danger btn-sm deleteTodo">Delete</a>';
    
                    return $btn;
            })
            ->rawColumns(['action'])
            ->make(true);
        }
        return view('functions/study/domain');