2016-05-17 6 views
0

私はLaravel ProjectにYajra Datatablesを含め、正常に動作しています。Yajra Laravel Datatable - マージカラムの値

問題は、3つの列の値をマージして1として表示し、同時に検索を許可する必要があることです。

どうすればよいですか?

レンダリング機能を使用してデータを1つの列に表示することができました。しかし、どのように検索する?

サンプルMySQLのテーブル:

student_master(fname,mname,lname) 

私が持っているJavaScriptを:

columns: [ 
    {data: 'thiscanbeanything', render:function (data, type, row) {       
       return row.fname+row.mname+row.lname; 
      }}, 
] 

コントローラ上の私のAjaxの機能は、この

$results = DB::table("student_master") 
      ->select(['fname', 'mname', 'lname']); 

    return Datatables::of($results)       
        ->make(true); 

答えて

3

のように見えるあなたは、コードを次のよう試すことができます

上記のコードサーバー側で

$results = DB::table("student_master") 
     ->select(['fname', 'mname', 'lname']); 

return Datatables::of($results) 
     ->addColumn('mergeColumn', function($row){ 
     return $row->fname.$row->mname.$row->lname; 
}) 
->make(true); 

Javascriptのサイド

` columns: [ 
     {data: 'mergeColumn', name: 'mergeColumn', searchable: false, sortable : false, visible:true}, 
     {data: 'fname', name: 'fname', searchable: true, sortable : true, visible:false}, 
     {data: 'mname', name: 'mname', searchable: true, sortable : true, visible:false}, 
     {data: 'lname', name: 'lname', searchable: true, sortable : true, visible:false}, 
    ],` 

をテストされていませんが、あなたは試すことができます。何か問題があれば教えてください。

+0

ありがとう..それは働いた:) –

関連する問題