Laravel-datatables: предупреждение об ошибке ajax 404 не найдено

Созданный на 28 авг. 2016  ·  10Комментарии  ·  Источник: yajra/laravel-datatables

Краткое изложение проблемы или запроса функции

Я новичок в laravel. Мне удалось запустить datatable с помощью плагина jquery.
Мне нужна обработка на стороне сервера. На днях я столкнулся с ошибкой 404. Сегодня я встретил
внутренняя ошибка сервера 500. Вызов неопределенного метода Yajra \ Datatables \ Datatables:

  • Присутствует вызов неопределенного метода Yajra \ Datatables \ Datatables :: eloquent (). Вчера было 404 файла, который не найден. Пожалуйста, помогите мне исправить ошибку, чтобы я мог запустить обработку на стороне сервера. Я не могу понять, чем это вызвано. Может быть, я использую сортировку и поиск в своем индексе?
  • Я также попытался проверить демонстрацию относительно левого соединения, но не смог получить демонстрацию.
    Присоединение имеет категории и поэтому требует присоединения. ** _ Как вы выводите данные, полученные в результате объединения
    в столбцах? Можете ли вы предоставить простой пример соединения, используемого при обработке на стороне сервера?
  • Как насчет того, чтобы в столбцах также была кнопка просмотра и редактирования, как их разместить?

Спасибо, что посмотрели на это.

Фрагмент кода проблемы

image
вот маршрут ..
image
index.blade.php
image
поставщик услуг
image
псевдоним
image

затем присоединение

индекс публичной функции (Request $ request) {

    $categories = Category::all();

    $query = Accession::select('*');

    //this is for links that will run query according to
    //category type

    if ($request->input('type')){

        switch ($request->input('type')){

            case 'Photo':

                $query->where('category_id', 2);

                break;

            case 'Field Notes':

                $query->where('category_id', 3);

                break;

            case 'Audio Recording':

                $query->where('category_id', 4);

                break;

            case 'Instrument':

                $query->where('category_id', 5);

                break;

            case 'Music Scores':

                $query->where('category_id', 6);

                break;

            case 'Video':


                $query->where('category_id', 7);

                break;

            case 'Vertical Files':

                $query->where('category_id', 8);

                break;

            default:

                $query->orderBy('id', 'asc')->get();
        }

        $accessions = $query->orderBy('id')->get();
        return view('accessions.index', compact('accessions', 'categories'));


    }

    //this is for search bar

    $search = $request->input('search'); //<-- we use global request to get the param of URI

    if($search){

        $accessions = Accession::where('groupcountry','LIKE','%'.$search.'%')
                    ->orWhere('description', 'LIKE', '%'.$search.'%')
                    ->orWhere('author', 'LIKE', '%'.$search.'%')
                    ->orWhere('accession_no','LIKE','%'.$search.'%')
                    ->orWhere('year','LIKE','%'.$search.'%')
                    ->paginate(10);

        return view('accessions.index', compact('accessions', 'categories'));
    }
    else{


        $accessions = Accession::orderBy('id', 'asc')->get();
        return view('accessions.index', compact('accessions', 'categories'));
    }


}

Детали системы

  • Операционная система Windows 10
  • Версия PHP PHP 5.6.20
  • Версия Laravel Версия Laravel Framework 5.2.45
  • Laravel-Datatables версии 6.0
question

Самый полезный комментарий

404 Not Found - это периодически возникающая проблема таблиц данных из-за проблем со средой при использовании php artisan serve . Пожалуйста, используйте valet, homestead или wamp / xampp, чтобы избежать этой проблемы.

Все 10 Комментарий

Я изменил пространство имен на Yajra \ Datatables \ Facades \ Datatables;
Таблицы теперь отображаются независимо от полученной ошибки.

image

ошибка ошибка 200

Попробуйте просмотреть ответ ajax, чтобы лучше понять ошибку. Вам также может потребоваться дважды проверить, соответствуют ли ваши столбцы и js структуре вашей таблицы. Вероятно, это проблема js.

Спасибо за ответ. Да, я проверил ответ ajax. JSON lint выглядит хорошо. Ошибка 200 исчезла. Я проверил столбцы и js и сопоставил их со структурой таблицы. Пока что ошибка сейчас

image
Дважды проверим

image

image

image

404 Not Found - это периодически возникающая проблема таблиц данных из-за проблем со средой при использовании php artisan serve . Пожалуйста, используйте valet, homestead или wamp / xampp, чтобы избежать этой проблемы.

@yajra . Да. В настоящее время я использую xampp. Поиск продолжается

Определение маршрута было пересмотрено. Прерывистый 404, но ajax возвращает данные. Думаю, я должен согласиться по вопросу экологии.

Развернул приложение в живую в героку. 404 больше нет. Так что это подтвержденная проблема окружающей среды. Закрытие этого. @yajra Спасибо, что посмотрели на ошибку. Ваша документация также помогла мне с левой кнопкой присоединиться, просмотреть и изменить, спасибо.

Приведенное выше решение работает, просто перенесите ваш проект в HTDOCS вашего XAMPP или www вашего WAMPP или запустите его вживую.

@ marker17 просто создайте свой javascript и web.php следующим образом

 $(document).ready(function () {
    var table = $('#example').DataTable({
        dom: 'lBrtip',
        processing: true,
        serverSide: true,
        ajax: {
            'url':'{!!url("ajax/chapter/list")!!}',
            'type': 'POST',
            'headers': {
            'X-CSRF-TOKEN': '{{ csrf_token() }}'
            }
            },

        orderCellsTop: true,
        fixedHeader: true,

        "columns": [{
                data: 'DT_RowIndex',
                orderable: false,
                searchable: true
            },

            {data: 'stream_id'},
            {data: 'course_id'},
            {data:  'subject_id'},
            {data:  'chapter_name'},
            {data: 'status'},
            {data: 'edit_delete',orderable: false},
        ],
    });

});

И в web.php

Route :: any ('ajax / chapter / list', 'YourController @Method ');

этот код работал у меня.

@ marker17 просто создайте свой javascript и web.php следующим образом

 $(document).ready(function () {
    var table = $('#example').DataTable({
        dom: 'lBrtip',
        processing: true,
        serverSide: true,
        ajax: {
            'url':'{!!url("ajax/chapter/list")!!}',
            'type': 'POST',
            'headers': {
            'X-CSRF-TOKEN': '{{ csrf_token() }}'
            }
            },

        orderCellsTop: true,
        fixedHeader: true,

        "columns": [{
                data: 'DT_RowIndex',
                orderable: false,
                searchable: true
            },

            {data: 'stream_id'},
            {data: 'course_id'},
            {data:  'subject_id'},
            {data:  'chapter_name'},
            {data: 'status'},
            {data: 'edit_delete',orderable: false},
        ],
    });

});

И в web.php

Route :: any ('ajax / chapter / list', 'YourController @Method ');

этот код работал у меня.

спаси мой день

Была ли эта страница полезной?
0 / 5 - 0 рейтинги