全文搜索回叫吗?

时间:2018-08-08 04:35:53

标签: mongodb

我是Mongo的新手,无法弄清楚这东西是如何工作的。首先,当我进行全文搜索时,我找不到任何地方如何做回调,这是mongo site的示例:

db.articles.find( { $text: { $search: "coffee" } } )

然后他们向您显示数据:

{ "_id" : 2, "subject" : "Coffee Shopping", "author" : "efg", "views" : 5 }
{ "_id" : 7, "subject" : "coffee and cream", "author" : "efg", "views" : 10 }
{ "_id" : 1, "subject" : "coffee", "author" : "xyz", "views" : 50 }

但是示例中的回调在哪里?到一天结束时,我出现了这段代码,它返回了结果,但没有返回查询结果,我得到了Cursor {}对象,如何与Cursor循环以获得结果?

database.collection(data.collection).find({$text: {$search: "whatever"}}, {score: {$meta: "textScore"}},function (error,results) {
        What i do here?
        console.log(results)
})

第二个问题,获得结果后如何按“ textScore”对它们进行排序?我无法将sort()放在函数的末尾,因为出现错误:

database.collection(data.collection).find({$text: {$search:"whatever"}}, {score: {$meta: "textScore"}},function (error,results) {
     console.log(results)
}).sort({score:{$meta:"textScore"}});

但是我可以在没有回调的情况下对其进行排序,如下所示:

database.collection(data.collection).find({$text: {$search: "whatever"}}, {score: {$meta: "textScore"}}).sort({score:{$meta:"textScore"}});

那么我该如何遍历光标并使它们同时排序呢? 希望你能帮我这个忙:) Thx

0 个答案:

没有答案