Встроенный пейджинг комментариев в mongodb - PullRequest
2 голосов
/ 22 сентября 2011

если я получил коллекцию для хранения статей со встроенными комментариями, при получении данных из базы данных я получу объект Article с полным списком комментариев, поддержка там содержит множество комментариев, так что это может быть проблемой загрузки Эффективность, как я могу обработать это с помощью подкачки комментариев? я должен использовать отдельную коллекцию для комментариев? или что еще? Спасибо заранее.

Ответы [ 2 ]

6 голосов
/ 22 сентября 2011

Вы ищете оператора $ slice .

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

db.articles.find({}, {comments:{$slice: [20, 10]}}) // skip 20, limit 10 

Эта операция вернет статьи только с нарезанными комментариями.)

0 голосов
/ 08 апреля 2012

Самый большой вопрос:

Ваши пользователи более заинтересованы в комментариях или просмотре контекста?

Высоко: Поместите комментарии в отдельныйдокументы и загрузите их сначала! Затем отправьте «вторичный» контент через AJAX.

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

Едва ли: Поместите комментарии в отдельные документы и загрузите их last (через AJAX).

(также использование AJAX может дать вам полезную функцию расширения загруженных комментариев с помощью простой прокрутки вниз)

...