Итак, предположим, что у вас есть такая схема:
{
_id,
text
}
Я полагаю, что _id является mongo ObjectId, поэтому мы имеем дату публикации, и я могу сортировать по нему
что я открыл текущую запись с id, равным ObjectId( "43cc63093475061e3d95369d")
(вместо этого я буду использовать curId
), и мне нужно знать следующий и предыдущий. Также давайте рассмотрим, что нам нужно получить все посты по порядку отсортированные по дате создания по убыванию:
Получить следующий пост вам может понравиться:
db.posts.find({_id: {$gt: curId}}).sort({_id: 1 }).limit(1)
Получить предыдущий пост вам может понравиться :
db.posts.find({_id: {$lt: curId}}).sort({_id: -1 }).limit(1)
Немного вещей:
ObjectId
, код не будет работать для вас, но вы все равно можете использовать postDate
вместо id и текущего post postDate вместо curId
.