比如获取某篇文章的前一篇和后一篇记录,有时间字段created
尝试使用下列语句获取文章
# created 是当前文章的创建时间 # 前一篇 prev_post = db.Post.find({ 'created': { '$lt': created } }, sort = [('created', -1)], limit = 1) # 后一篇 next_post = db.Post.find({ 'created': { '$gt': created } }, sort = [('created', 1)], limit = 1)
运行的结果是这些记录是跳跃使的,有时候中间会跳过好几条记录,不知道如何解决这个问题
我想可能是我对 find 的理解有误,希望大家指点迷津
Tout d'abord, il n'y a aucun problème avec la déclaration, mais vous avez utilisé le type time.
Si le type d'heure est utilisé, il est probable que les enregistrements de temps soient les mêmes. Vérifiez si vos enregistrements ont la même heure.
Si les conditions le permettent, vous pouvez utiliser
_id
ou coopérer avec_id
pour éviter cette situation.