Pull to refresh

Пагинация в Doctrine (Использование SQL_CALC_FOUND_ROWS)

Doctrine ORM *
Начиная от версии 4.0 в СУБД MySQL появилась достаточно удобная возможность подсчета количества всех подходящих под запрос записей, когда количество записей ограничивается LIMIT’ом. При работе с поиском в БД, а так же при выборках из таблиц с большим количеством записей такой функционал просто необходим. В этой статье я расскажу, как можно использовать эту возможность в ORM Doctrine
и как же?
Total votes 14: ↑9 and ↓5 +4
Views 7.2K
Comments 8

В Google Docs появились разбиение на страницы и встроенная печать

IT-companies
Разработчики Google Docs добавили в сервис классическую функцию текстовых редакторов — пагинацию, то есть возможность разбиения документа на страницы.


Читать дальше →
Total votes 91: ↑84 and ↓7 +77
Views 31K
Comments 36

Пагинация в Doctrine — считаем количество записей с помощью SQL_CALC_FOUND_ROWS (MySQL)

Doctrine ORM *
Sandbox

Предыстория


Не так давно, в связи с производственной необходимостью, я познакомился с замечательным фреймворком Symfony 2, в котором для работы с базой данных используется мощная популярная библиотека — Doctrine 2, включающая в себя два компонента: ORM (Object relational mapper) и DBAL (Database Abstraction Layer). ORM предоставляет приложению возможность общаться с базой данных на языке объектов, а DBAL, в свою очередь, представляет собой более низкоуровневый способ доступа к данным посредством написания запросов, основанный на php-библиотеке PDO. ORM предоставляет множество преимуществ при разработке сложных бизнес-приложений, но в то же время налагает и ряд ограничений, связанных с тем, что разработчику не приходится писать непосредственно SQL-запросы — ORM Doctrine предлагает свой собственный, объектно-ориентированный язык запросов, который преобразуется в привычный SQL уже за кадром. С одним из таких ограничений я и столкнулся, и хочу поделиться, каким образом я его успешно преодолел. Речь пойдёт о получении общего количества записей, возвращаемых запросом, если убрать из него ограничение LIMIT.
Читать дальше →
Total votes 5: ↑5 and ↓0 +5
Views 13K
Comments 5

Простой способ пагинации в Highcharts

JavaScript *

Недавно при создании страницы статистики на сайте, мне потребовалось в очередном графике вывести 450 позиций. В виду того, что данный график был на странице не один, да и выглядел бы очень громоздко на странице было принято решение, добавить нечто вроде разбиения данных на страницы. Для графиков в проекте используется библиотека Highcrarts. Покопавшись в документации была найдена только пагинация для легенды, но не для графиков.
Читать дальше →
Total votes 17: ↑9 and ↓8 +1
Views 6.2K
Comments 3

Режим читателя: Пагинация в мобильных email-письмах

Pechkin.com corporate blog CSS *HTML *Email layout *
Translation
В блоге FreshInbox опубликован пост об интересной экспериментальной техники реализации пагинации в письмах мобильных почтовых рассылок. Ее использование позволяет создавать письма, получатели которых могут перемещаться по контенту без необходимости скроллинга.

Развитие адаптивного дизайна сделало чтение писем на мобильных устройствах легче. С другой стороны, побочным эффектом стал тот факт, что для чтения «массивных» писем теперь нужно много скроллить. В итоге до конца послания добираются только самые стойкие читатели. Если дать людям возможность быстрой навигации по письму, это бы значительно улучшило ситуацию.



Описываемая техника работает только в почтовом приложении Mail для iPhone (версия для Android в разработке).
Читать дальше →
Total votes 12: ↑10 and ↓2 +8
Views 5.5K
Comments 4

Новая жизнь старой пагинации

Web design *Interfaces *Usability *
Когда занимаешься проектированием, уже в режиме «автопилот» замечаешь не только интересные фишки, но и шероховатости во взаимодействии, вещи, которые хотелось бы исправить на некоторых сайтах. Одна из таких вещей — пагинация (назовем это так) или способы подачи и поиска контента на сайте.

Меня вот всегда напрягала необходимость при поиске чего-либо, каждый раз переключаться на следующую страницу. Хотелось как-то проще просматривать информацию, не отвлекаться на лишние телодвижения.

Если вам тоже хотелось «как-то проще» — тогда вам сюда. В статье хочу рассказать о новом, изобретенном, виде пагинации. Чтобы было понятно откуда растут ноги, вводной частью пущу небольшой рассказ о двух самых распространенных видах отображения контента. Их достоинства и недостатки. Потом перейду к сути.
Читать дальше →
Total votes 22: ↑19 and ↓3 +16
Views 13K
Comments 45

Хватит делать сайты с бесконечной прокруткойǃ

Web design *Interfaces *Mobile applications design *Design
Translation


TL;DR. Хотя бесконечная прокрутка подходит для некоторых случаев, но она может создать проблемы.

Бесконечная прокрутка может быть дезориентирующей, неконтролируемой и вызывать стресс у пользователей.

В этой статье мы объясним, почему нужно прекратить создание сайтов с бесконечной прокруткой. Но для начала рассмотрим краткую историю вопроса.
Читать дальше →
Total votes 140: ↑128 and ↓12 +116
Views 72K
Comments 208

Создаем кэшируемую пагинацию, которая не боится неожиданного добавления данных в БД

Entertaining tasks Programming *Algorithms *Node.JS *VueJS *
Sandbox

Если на вашем сайте присутствует большое количество контента, то для отображения пользователю его приходится так или иначе делить.

Все известные мне способы имеют недостатки и я попытался создать систему, которая сможет решить некоторые из них и при этом не будет слишком сложна для реализации.

Показать статью полностью
Total votes 5: ↑5 and ↓0 +5
Views 16K
Comments 10

React: разрабатываем хук для загрузки дополнительных данных

Timeweb Cloud corporate blog Website development *JavaScript *ReactJS *TypeScript *


Привет, друзья!


В этой статье я хочу поделиться с вами опытом разработки хука для загрузки дополнительных данных (авось кому-нибудь пригодится).


На самом деле, хуков будет целых 2 штуки:


  • useLoadMore — для загрузки дополнительных данных при нажатии кнопки "Загрузить еще"
  • useLoadPage — для постраничной загрузки данных (аля пагинация на основе курсора)

Первый хук попроще, второй посложнее.


Полагаю, лишним будет говорить, что необходимость в использовании подобных хуков возникает в каждом втором проекте (по крайней мере, в моей сфере деятельности).

Читать дальше →
Total votes 3: ↑2 and ↓1 +1
Views 7K
Comments 9