#php #jquery #ajax #laravel #datatable
#php #jquery #ajax #laravel #доступ к данным
Вопрос:
Я использую Laravel 5.4 с Yajra DataTable 8.0, на localhost все работает хорошо, и с данными все в порядке. Однако, когда я загружаю свои файлы на онлайн-сервер «digital ocean», Datatable работает, но для разбивки на страницы не работает полностью. Он показывает все записи (6420 записей) на каждом слайде разбивки на страницы. На localhost он показывает 10 записей на страницу, как обычно, но онлайн он показывает все записи на каждом слайде разбивки на страницы.
Еще одна проблема, которая заключается в окне поиска, которое вообще не работает. Он показывает обработку при каждом вводе любого текста внутри него. Однако после ввода чего-либо внутри него результатов нет.
Здесь, в моем заголовке:
<head>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<link href="https://fonts.googleapis.com/css?family=Dosis:300,400,500,700" rel="stylesheet">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<script src="https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js"></script>
<link rel="stylesheet" href="https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css"/>
</head>
и это таблица:
<table id="student_table" class="this_testing table table-bordered" style="width:100%">
<thead>
<tr>
<th>name</th>
<th>primary_number</th>
</tr>
</thead>
</table>
Это мой JS:
<script>
$(document).ready(function () {
$('.this_testing').DataTable({
processing: true,
serverSide: true,
ajax: {
url: "lead/testing"
},
columns: [
{"data": "id", "name": "id"},
{"data": "name", "name": "name"}
],
// bSort: true,
dom: 'Bfrtip',
buttons: [
'copy', 'csv', 'excel', 'pdf', 'print'
]
});
});
</script>
Это мой маршрут:
Route::get('lead/testing', 'LeadController@testing');
Route::get('lead/testings', 'LeadController@testings');
Наконец, с помощью контроллера для получения данных:
public function testings()
{
return view('testing');
}
public function testing()
{
$allClients = Status::select('id','name');
return DataTables::of($allClients)->make(true);
}
В сети или при проверке нет какой-либо ошибки Ajax, я получил правильные данные от контроллера, но моя проблема в отображении DataTable на сервере «digital ocean», он продолжает показывать все записи ответов (6320 записей) на каждом слайде разбивки на страницы, что делает страницу слишком длинной, и разбивке на страницы требуется время для загрузки. Я хочу, чтобы это работало как обычно, по 10 записей на страницу, есть ли какой-либо конфликт или библиотека пропущена.
Другая проблема, окно поиска показывает обработку при каждом наборе текста, но не работает, и результаты не затронуты.
Пожалуйста, любая помощь, я использую Laravel 5.4 и DataTable ^ 8.0 на сервере Digital Ocean
Комментарии:
1. Для разбивки на страницы необходимо ПОЛУЧИТЬ маршрут для работы, и не могли бы вы, пожалуйста, обновить функциональность поиска
2. Спасибо за ваш ответ, я обновляю свой вопрос и добавляю маршрут, где я уже использовал GET в route для получения данных. Вопрос: что вы подразумеваете под функцией поиска обновлений?
3. Хорошо, но где форма поиска? и какой из них является вашим методом поиска, я не вижу, чтобы какой-либо параметр передавался
4. Я использую Yajra Datatable, где окно поиска встроено в зависимость.