Tengo un conjunto de campos con criterios de coincidencia y clasificación variables, es decir, una consulta inteligente. Ejecuto una agregación que coincide y ordena, pero me gustaría implementar una paginación de estilo de cursor. Para mis listas normales, puedo usar un campo de pedido mayor que el de un ObjectID pasado a mi API, pero Smart Queries no tendrá un campo de pedido codificado.
¿Cómo puedo usar un ObjectID para obtener el siguiente (n) número de elementos en una lista que ya he emparejado y ordenado? Usando javascript y mangosta, aquí hay un código general para mi consulta actual
const plist = await Media.aggregate([ ...smartMatch, ...smartSort, //somehow match and limit next (n) items after ObjectID, ]).allowDiskUse(true);Smart Match and Sort es una matriz de operaciones definidas por el usuario.