Yii. Виджет CGridView. Как сделать получение данных после загрузки страницы?
В общем случилась маленькая проблемка. CGridView у меня выводит большую таблицу данных, в следствии чего страница загружается довольно долго (около 5 секунд). А предполагаемый объем данных может быть гораздо больше того, что есть сейчас. Т.е. страница может грузиться еще дольше.
Пагинация, как решение проблемы не подходит.
Поэтому есть мысль выводить CGridView пустым, а после полной загрузки страницы, через ajax-запрос получать данные.
Может у виджета CGridView есть какое-то свойство которое решит эту проблему? Не смог найти...
Или надо с "dataProvider" будет развлекаться?
Не подходит тем, что когда я переходу на страницу CGridView загружается не аяксом, а целиком сразу. И вот надо ждать пока она целиком прогрузится. А так то потом да, по аяксу обновляю. Такой параметр у меня есть: 'ajaxUpdate'=>true
Вроде современные браузеры и так грузят по отдельности.
Пример на php/ через curl.
Сначала из ленты JSON получаем заголовки а потом ленту, притом без ajax.
Жать на квадратик, тогда справа видно www.dulsky.eu/v/Mk7-GRWq7wA
Всё делает сам браузер.
Один курл получает заголовки и когда он загрузит их загружается курлом лента роликов, она тяжелее и не мешает уже загруженному сайту, она может вообще не загрузится или медленно если на гугле проблемы, это все делает php и браузер, фокус покус
IE точно сам ничего грузить не будет.
Да и вообще я сомневаюсь, что браузеры каким-то образом будут определять фреймворк Yii, его виджет CGridView, а затем каким-то образом узнавать куда отправить ajax запрос чтобы заполнить CGridView.
Логику поведения приложения задает программист, а не браузер. Иначе бы началась анархия
аякс грузит только саму страничку а не содержание, далее курл php работает как загрузчик независимо от страницы, при медленном или тяжелом содержании он его позже загрузит независимо от страницы которая уже загружена, как начало так и конец или по другому курлу, фиг его знает как но это работает
Что даст вам если вы выведите CGridView пустым а после полной загрузки страницы начнете его заполнять данными?
Может как вариант сделать так сказать динамическую пагинацию, тоесть сперва загрузить 10-20 данных а потом при скролле страницы вниз подгружать остальные данные