Я загружаю данные из своей базы данных, что является очень большим объемом данных. Чтобы получить действительно быструю производительность, я ограничиваю данные (с помощью моей parts
функции)
Controller. php
$table = $this->em->getRepository($EntityName)->parts(10);
$table_json = $serializer->serialize($table, 'json');
$table_array = json_decode($table_json);
// here I am adding some complex data to the array from other database tables and then I encode the array again for the datatable
$data = json_encode($table_array);
page. html .twig:
var table = $('.table').DataTable({
"lengthMenu": [[10, 25, 50,100, -1], [10, 25, 50,100, "All"]],
"pageLength": 10,
"scrollX": true,
"data":{{ output.data|raw }},
функция частей:
public function parts($limit) {
return $this->createQueryBuilder('documents')
->setMaxResults($limit)
->getQuery()
->execute();
}
Что я хотел знать, есть ли шанс, что в зависимости от нумерации страниц я загружаю только 10 записей из своей базы данных? Таким образом, нумерация страниц с 1 по 10 будет загружать первые 10 записей, а с 11 до 20 - следующие 10 записей. Я много исследовал, и я не нашел решение, которое подходит для моего конкретного c кода. Это потому, что после загрузки из базы данных мне нужно что-то сделать с записями, прежде чем я покажу это в таблице данных.