Hallo,
In meiner Datentabelle rufe ich das Namensfeld als CONCAT (fname, "", "lname") ab. Ich muss das Namensfeld in der Datentabelle suchen und es sollte eine Übereinstimmung mit fname oder lname zurückgeben. Bitte lassen Sie mich wissen, wie das geht:
js code:
columns : [
{ data: 'name', name: 'fname' }, //I have tried this also : ['fname','lname' ]
--------------------
PHP-Code:
$users = User::leftJoin('address', 'address.user_id', '=', 'users.user_id')
->select([\DB::Raw(
'CONCAT(fname," ",lname) as name, CONCAT(country_code, "", mobile_number) as mobile_num, IF(status = 1, "Active", "Inactive") as status,
(SELECT count(subscription_id) FROM subscription WHERE subscription.user_id = users.user_id AND subscription.status IN (2,4)) as totalActivesubscription'
), 'gender', 'city as address', 'city','users.user_id', 'email_id'])
->where('users.role_id', '=', $aParam['role_id']);
return Datatables::of($users)
->addColumn('actions', function ($users) {
return view('users.templates.user_action', [
'user' => $users
])->render();
})
->make(true);
Systemdetails: "
Versuchen Sie vielleicht, diesen Trick auf Ihrem js anzuwenden:
columns : [
{ data: 'name', name: 'fname' },
{ data: 'name', name: 'lname', visible: false },
...
Oder verwenden Sie die filterColumn- API.
Mit der filterColumn-API hat es funktioniert. Vielen Dank.
Was aber, wenn wir ein Feld einer anderen Tabelle durchsuchen müssen (die in der Hauptabfrage enthalten ist)?
OK, es wurde mit https://datatables.yajrabox.com/fluent/joins gelöst
Hilfreichster Kommentar
Versuchen Sie vielleicht, diesen Trick auf Ihrem js anzuwenden:
Oder verwenden Sie die filterColumn- API.