Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
07.05.2018, 19:51
|
|||
---|---|---|---|
как делать пагинацию при множестве фильтров? |
|||
#18+
когда фильтров много, да ещё и с джойнами, то способ с IOS уже не работает, на всё же индексы не поставишь... миллиард строк оффсетить тоже не вариант а что остаётся? во1, как вообще показывать кол-во страниц, если неизвестно общее кол-во, просто писать 'Last' ? а во2, как на 10ю с конца страницу перейти быстро-быстро? есть так себе вариант брать оригинальную таблицу + её кол-во строк и по нему генерить кол-во страниц (в конце-концов, кто их там проверять будет)... или же просто ВООБЩЕ не заморачиваться, а в фильтре показывать только 1-10 и всё в конце-концов, это же фильтр! Фильтруйте, сортируйте, зачем вам последняя страница?! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
07.05.2018, 20:12
|
|||
---|---|---|---|
|
|||
как делать пагинацию при множестве фильтров? |
|||
#18+
tip78просто ВООБЩЕ не заморачиваться, а в фильтре показывать только 1-10 и всё! после долгих головоломок я в своё время пришёл именно к этому, т.к. count очень дорогая штука tip78 брать оригинальную таблицу + её кол-во строк и по нему генерить кол-во страниц не вариант - у Вас ведь джойны и фильтры - как Вы себе это представляете? если фильтр отбирёт 10 записей, а вы подсуните 1000 страниц ... |
|||
:
Нравится:
Не нравится:
|
|||
|
07.05.2018, 21:01
|
|||
---|---|---|---|
|
|||
как делать пагинацию при множестве фильтров? |
|||
#18+
tip78когда фильтров много, да ещё и с джойнами, то способ с IOS уже не работает, на всё же индексы не поставишь... миллиард строк оффсетить тоже не вариант а что остаётся? во1, как вообще показывать кол-во страниц, если неизвестно общее кол-во, просто писать 'Last' ? а во2, как на 10ю с конца страницу перейти быстро-быстро? есть так себе вариант брать оригинальную таблицу + её кол-во строк и по нему генерить кол-во страниц (в конце-концов, кто их там проверять будет)... или же просто ВООБЩЕ не заморачиваться, а в фильтре показывать только 1-10 и всё в конце-концов, это же фильтр! Фильтруйте, сортируйте, зачем вам последняя страница?! Первые 10 страниц только дальше только с фильтром по дате (как у ЖЖ лента сделана) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
07.05.2018, 21:58
|
|||
---|---|---|---|
как делать пагинацию при множестве фильтров? |
|||
#18+
Maxim Boguk, ЖЖ, кстати, тормозной жесть а почему по дате то? там же надо брать последний ID и с него дальше двигать. Как-то вы отвечали недавно тут: авторНу вот например есть у вас таблица с постами в форуме. Следующая страница (ссылки) формируется не через limit/offset (которые не будут корректно работать если новые посты например. появляются), а через where post_id < (последний post_id на текущей странице) LIMIT сколько вам надо. Т.е. не ссылка на prev page вида skip=50 а ссылка на prev page вида before_post_id=[последний post_id на текущей странице]. Тогда как минимум это во многих случаях будет нормально работать по скорости и главное навигация не будет ломаться при появлении новых постов (что в 100% случаев происходит с limit/offset. пагинацией). PS: если у вас там 5-10 страниц максимум - можно и limit/offset а вот если потенциально 1000 страниц - то нет. и у ЖЖ, кстати, там "&page=4" - вот так вот. И 60 комментов на странице. зы: кстати, спасибо за ваши видео-объяснялки и пдф-ки, законспектировал их ) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
07.05.2018, 22:23
|
|||
---|---|---|---|
как делать пагинацию при множестве фильтров? |
|||
#18+
хотя нет, не 60, у них там как-то резиново всё есть 297 постов и 6 страниц есть 100 постов и 5 страниц а есть 900 постов и 7 страниц видимо чтобы все страницы всегда были на виду ... |
|||
:
Нравится:
Не нравится:
|
|||
|
25.05.2018, 04:19
|
|||
---|---|---|---|
как делать пагинацию при множестве фильтров? |
|||
#18+
кстати, вот тут count() послогали в разные стороны, в конце результаты есть практически ничего нового, но может интересно кому ... |
|||
:
Нравится:
Не нравится:
|
|||
|
25.05.2018, 04:20
|
|||
---|---|---|---|
как делать пагинацию при множестве фильтров? |
|||
#18+
ну а я остановился на вариантах, когда кол-во выводимых строк прямо в фильтре указывается, либо страницы подгружаются по мере прокрутки, как в ютубе а так то при наличии фильтрации страницы и не нужны вовсе ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=53&tablet=1&tid=1995757]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 281ms |
total: | 436ms |
0 / 0 |