ΠΡΠ΅ΠΌ ΠΏΡΠΈΠ²Π΅Ρ,
Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ "yajra/laravel-datatables-oracle": "^6.3"
ΠΈ laravel 5.2.
ΠΡΠ΅ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ΠΌ ΡΠ°Π±Π»ΠΈΡ Π΄Π°Π½Π½ΡΡ , Π½ΠΎ ΠΊΠΎΠ³Π΄Π° Ρ Π½Π°ΡΠΈΠ½Π°Ρ ΠΏΠΎΠΈΡΠΊ, Ρ ΠΏΠΎΠ»ΡΡΠ°Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅
SQLSTATE[42000]: Syntax error or access violation: 1583 Incorrect parameters in the call to native function 'LOWER' ...
public function index(Request $request){
$items = DB::table('items as it')->select('it.*','c.name as category')
->join('category as c', 'it.category_id', '=', 'c.id');
$datatables = Datatables::of($items)
->addColumn('no', function ($items) { return ''; }));
if ($keyword = $request->get('search')['value']) {
$datatables->filterColumn('name', 'whereRaw', "items.name like ? ", ["%$keyword%"]);
$datatables->filterColumn('category', 'whereRaw', "category.name like ? ", ["%$keyword%"]);
}
return $datatables->make(true);
}
$('#items_table').DataTable({
processing: true,
serverSide: true,
iDisplayLength: 25,
'responsive': true,
'language' : {
"sSearchPlaceholder": "Search..",
"lengthMenu": "_MENU_",
"search": "_INPUT_",
"paginate": {
"previous" : '<i class="icon md-chevron-left"></i>',
"next" : '<i class="icon md-chevron-right"></i>'
}
},
order: [[ 1, "asc" ]],
ajax: {
url : 'items/index',
type : "POST",
data : function (d) {}
},
columns: [
{ data: 'no', orderable: false, bSearchable: false },
{ data: 'name', name: 'name' },
{ data: 'category', name: 'category' },
],
"fnRowCallback" : function(nRow, aData, iDisplayIndex){
// For auto numbering at 'No' column
var start = tbl.page.info().start;
$('td:eq(0)',nRow).html(start + iDisplayIndex + 1);
},
});
ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΏΠΎΠΌΠΎΠ³ΠΈΡΠ΅ ΠΌΠ½Π΅.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ!
@ seven9 Π²Ρ ΠΏΡΠΎΠ±ΠΎΠ²Π°Π»ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡΡΡ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ v6.22.5
?
ΠΡΠΈΠ²Π΅Ρ @yajra ,
Π― ΡΠΆΠ΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΠ» ΠΈ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π». ΠΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ, ΠΊΠΎΠ³Π΄Π° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ ΡΠ°Π±Π»ΠΈΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ
DB::table('items as it')
ΠΈ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡΠ΅ΡΡ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΡΠ°Π»Π±Π°ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° Π·Π°ΠΏΡΠΎΡΠΎΠ² laravel.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ..
@ seven9 , Ρ ΠΌΠ΅Π½Ρ ΡΠ°ΠΊΠ°Ρ ΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Π½ΠΎ Π² ΠΊΠΎΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΎΠ² ΠΎΠ½Π° ΡΠ΅ΡΠ΅Π½Π°. ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ Π² ΠΌΠΎΠ΅ΠΌ JS.
Π― ΡΠ±Π΅Π΄ΠΈΠ»ΡΡ, ΡΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΡΠΎΠ»Π±ΡΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΡ ΠΈ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΡΠΎΠ»Π±ΡΠ°ΠΌ.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Π²Π°Ρ ΠΏΡΠΈΠΌΠ΅Ρ:
data: 'name', name: 'name'
data: 'category', name: 'category'
Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅-Π΄Π°Π½Π½ΡΡ
: _alias_
ΠΈΠΌΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ : _ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠΎΠ»Π±Π΅Ρ_
ΠΏΡΡΠ°ΡΡΡΡ:
data: 'name', name: 'it.name'
data: 'category', name: 'c.name'
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ @jedknyt ΠΈ Ρ ΠΎΡΠΎΡΠ΅Π΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅.
@jedknyt ΡΡ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΠ» ΠΌΠ½Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π±ΡΠ°ΡΠ°Π½
@jedknyt ΡΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΡΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΠ»ΠΈΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ. π
ΠΠ°ΠΏΡΠΎΡ
$sales = \DB::table('driver_ride_transactions as drt')
->join('bookings', 'bookings.id', '=', 'drt.booking_id')
->join('businesses', 'businesses.id', '=', 'bookings.business_id')
->leftJoin('users as driver_u', 'drt.user_id', '=', 'driver_u.id')
->leftJoin('users as app_u', 'bookings.user_id', '=', 'app_u.id')
->select('drt.id', 'drt.status', 'driver_u.first_name as driver_name', 'app_u.first_name as app_user_name', 'businesses.name as destination', 'drt.created_at');
ΠΠΎΠ΄ Javascript
$('#sales-table').DataTable({
processing: true,
serverSide: true,
order: [ [4, 'desc'] ],
ajax: '{{ route('admin:fetch:ride:transactions') }}',
columns: [
{data: 'id', name: 'drt.id'},
{data: 'destination', name: 'destination'},
{data: 'driver_name', name: 'driver_name'},
{data: 'app_user_name', name: 'app_user_name'},
{data: 'created_at', name: 'drt.created_at'},
{data: 'status', name: 'drt.status'}
]
});
ΠΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΎΡΠ»ΠΈΡΠ½ΠΎ, Π½ΠΎ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ° ΠΎΡΠΈΠ±ΠΊΠ° ΠΏΡΠΈ ΠΏΠΎΠΈΡΠΊΠ΅ _Search Error ΠΠ΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ 'LOWER'_
Π§ΡΠΎ ΠΌΠ½Π΅ Π½Π΅ Ρ Π²Π°ΡΠ°Π΅Ρ? @yajra @jedknyt ?
@siddharthghedia, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, Ρ Π΄ΡΠΌΠ°Ρ, Π²Π°ΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡΡΠΈΡΡ ΠΈΠΌΡ ΡΠ°Π±Π»ΠΈΡΡ Π² ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ ΠΈ ΠΈΠ·Π±Π΅Π³Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠ° Π΄Π»Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ name
. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ»Π±ΡΠ°.
columns: [
{data: 'id', name: 'drt.id'},
{data: 'destination', name: 'drt.destination'},
{data: 'driver_name', name: 'driver_u.first_name'},
{data: 'app_user_name', name: 'app_u.first_name'},
{data: 'created_at', name: 'drt.created_at'},
{data: 'status', name: 'drt.status'}
]
@yajra ΠΠΎΠ»ΡΡΠΎΠ΅ ΡΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΎΡΠ²Π΅Ρ, Ρ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π» ΡΠΎΡ ΠΆΠ΅ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ, Π½ΠΎ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ Π΄Π°Π» ΠΌΠ½Π΅ ΡΡ ΠΆΠ΅ ΠΎΡΠΈΠ±ΠΊΡ, ΠΈ Π²Ρ ΠΏΠΎΠΏΡΠΎΡΠΈΠ»ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ Π΄Π»Ρ name
Π²Π΅ΡΠ½ΠΎ? ΠΠΎ Π·Π΄Π΅ΡΡ driver_u
ΠΈ app_u
ΡΠ²Π»ΡΡΡΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠ°ΠΌΠΈ. ΠΠ°ΠΊ Ρ ΠΌΠΎΠ³ ΡΡΠΎ ΡΠ΅ΡΠΈΡΡ? ΠΠ°ΡΠ°Π½Π΅Π΅ ΡΠΏΠ°ΡΠΈΠ±ΠΎ.
ΠΡΠΈΠ²Π΅Ρ @siddharthghedia , Ρ ΠΌΠ΅Π½Ρ ΡΠ°ΠΊΠ°Ρ ΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Π΅ΡΡΡ Π»ΠΈ Ρ Π²Π°Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅.
ΠΠ°ΡΠ°Π½Π΅Π΅ ΡΠΏΠ°ΡΠΈΠ±ΠΎ.
ΠΠ½Π΅ ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΌΠΎΠ³Π»ΠΎ, Ρ ΡΠ΅ΡΠΈΠ» ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ... ΡΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΡΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΠ»ΠΈΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ
@siddharthghedia, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, Ρ Π΄ΡΠΌΠ°Ρ, Π²Π°ΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡΡΠΈΡΡ ΠΈΠΌΡ ΡΠ°Π±Π»ΠΈΡΡ Π² ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ ΠΈ ΠΈΠ·Π±Π΅Π³Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠ° Π΄Π»Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ
name
. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ»Π±ΡΠ°.columns: [ {data: 'id', name: 'drt.id'}, {data: 'destination', name: 'drt.destination'}, {data: 'driver_name', name: 'driver_u.first_name'}, {data: 'app_user_name', name: 'app_u.first_name'}, {data: 'created_at', name: 'drt.created_at'}, {data: 'status', name: 'drt.status'} ]
ΠΠ΅Π½Ρ ΡΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ. ΠΠΎΠ»ΡΡΠΎΠ΅ ΡΠΏΠ°ΡΠΈΠ±ΠΎ
@siddharthghedia, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, Ρ Π΄ΡΠΌΠ°Ρ, Π²Π°ΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡΡΠΈΡΡ ΠΈΠΌΡ ΡΠ°Π±Π»ΠΈΡΡ Π² ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ ΠΈ ΠΈΠ·Π±Π΅Π³Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠ° Π΄Π»Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ
name
. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ»Π±ΡΠ°.columns: [ {data: 'id', name: 'drt.id'}, {data: 'destination', name: 'drt.destination'}, {data: 'driver_name', name: 'driver_u.first_name'}, {data: 'app_user_name', name: 'app_u.first_name'}, {data: 'created_at', name: 'drt.created_at'}, {data: 'status', name: 'drt.status'} ]
ΠΠ΅Π½Ρ ΡΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ. Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π±ΠΎΠ»ΡΡΠΎΠ΅
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
@ seven9 , Ρ ΠΌΠ΅Π½Ρ ΡΠ°ΠΊΠ°Ρ ΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Π½ΠΎ Π² ΠΊΠΎΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΎΠ² ΠΎΠ½Π° ΡΠ΅ΡΠ΅Π½Π°. ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ Π² ΠΌΠΎΠ΅ΠΌ JS.
Π― ΡΠ±Π΅Π΄ΠΈΠ»ΡΡ, ΡΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΡΠΎΠ»Π±ΡΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΡ ΠΈ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΡΠΎΠ»Π±ΡΠ°ΠΌ.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Π²Π°Ρ ΠΏΡΠΈΠΌΠ΅Ρ:
data: 'name', name: 'name'
data: 'category', name: 'category'
Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅-Π΄Π°Π½Π½ΡΡ : _alias_
ΠΈΠΌΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ : _ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠΎΠ»Π±Π΅Ρ_
ΠΏΡΡΠ°ΡΡΡΡ:
data: 'name', name: 'it.name'
data: 'category', name: 'c.name'