Laravel 和 DataTables.net

Laravel and DataTables.net

我是 Laravel 的初学者。 我在我的项目中使用 Laravel 7。我在我的项目中使用 yajra/laravel-datatables。

我有这个代码:

<table class="table table-bordered data-table    ">
                        <thead>
                        <tr>
                            <th>ID</th>
                            <th>Tytuł</th>
                            <th>Status</th>
                            <th width="100px">Akcja</th>
                        </tr>
                        </thead>
                        <tbody>
                        </tbody>
                    </table>


$(function () {
            var table = $('.data-table').DataTable({
                processing: true,
                serverSide: true,
                ajax: "{{ route('tabelka.tabelka2') }}",
                columns: [
                    {data: 'DT_RowIndex', name: 'DT_RowIndex'},
                    // {data: 'id', name: 'id'},
                    {data: 'title', name: 'title'},
                    {data: 'enable', name: 'enable'},
                    {data: 'action', name: 'action', orderable: false, searchable: false},
                ]
            });
        });

和控制器:

public function tabelka2(Request $request)
    {
//        return Datatables::of(Page::query())->make(true);
        if ($request->ajax()) {
            $data = Page::get();
            return Datatables::of($data)
                ->addIndexColumn()
                ->addColumn('action', function($row){

                    //$btn .= '<a href="javascript:void(0)" class="edit btn btn-primary btn-sm">View</a>';
                    $btn = '<a href="javascript:void(0)" class="edit btn btn-primary btn-sm"></a> ';
                    $btn .= '<a href="javascript:void(0)" class="edit btn btn-primary btn-sm"></a> ';



                    return $btn;
                })
                ->rawColumns(['action'])
                ->make(true);
        }
    }

工作正常。

  1. 如何搜索标题、启用以外的列?我需要搜索描述和关键字。
  2. 如果启用 = 1 - 我想显示 "active"。否则 "inactive"
  3. 我想 "pack" 中的标题值:...])}} "> 描述

有人知道怎么做吗?请帮助

1 - 我不确定我是否理解并且我没有足够的声誉来发表评论。描述来自哪里?但是,如果您想操作输入字符串或与数据库中的值进行比较,我建议您开始 here and here

2 - 您可以使用 editColumn 函数并检查 $row 值。像这样:

->addIndexColumn()
->editColumn('columnName', function ($row){
    if($row->atributte == 1) 
       return 'true';
    else return 'false';

}

3 - 我再次不确定我是否理解。如果您想连接或操作数据库中的两个值,您可以使用最后的提示。

您可以在 Docs

查看更多内容