Laravel-datatables: Ошибка поиска ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ собствСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Β«ΠΠ˜Π–ΠΠ˜Π™Β»

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 21 Π΄Π΅ΠΊ. 2016  Β·  13ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: yajra/laravel-datatables

ВсСм ΠΏΡ€ΠΈΠ²Π΅Ρ‚,
Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ "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' ...

Π’ΠΎΡ‚ ΠΌΠΎΠΉ ΠΊΠΎΠ΄ php

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);
}

Π’ΠΎΡ‚ ΠΌΠΎΠΉ javascript

$('#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 , Ρƒ мСня такая ΠΆΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, Π½ΠΎ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ†ΠΎΠ² ΠΎΠ½Π° Ρ€Π΅ΡˆΠ΅Π½Π°. Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±Ρ‹Π»ΠΎ Π² ΠΌΠΎΠ΅ΠΌ JS.
Π― убСдился, Ρ‡Ρ‚ΠΎ свойства столбца ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ псСвдониму ΠΈ фактичСским столбцам.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ваш ΠΏΡ€ΠΈΠΌΠ΅Ρ€:
data: 'name', name: 'name'
data: 'category', name: 'category'

Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅-Π΄Π°Π½Π½Ρ‹Ρ… : _alias_
имя-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ : _фактичСский столбСц_

ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ:
data: 'name', name: 'it.name'
data: 'category', name: 'c.name'

ВсС 13 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

@ 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'_
screen shot 2017-11-24 at 12 51 06 pm

Π§Ρ‚ΠΎ ΠΌΠ½Π΅ Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚? @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'}
            ]

МСня устраиваСт. Бпасибо большоС

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ