这在2.6.1中发生在我身上 - 所以,如果有人徘徊在这个错误中,我想我会写出答案。
第一个命令工作正常,但第二个命令没有。
db.test.find({$text: {$search: 'york'}} )
db.test.find({$text: {$search: 'york'}, score: {$meta: 'textScore'}} )
并抛出下面的错误
{"$err": "Can't canonicalize query: BadValue unknown operator: $meta", "code": 17287}
答案 0 :(得分:14)
原来我只是把括号放在错误的地方..它应该已经读过了。
//This works
db.test.find({
{$text: {$search: 'york'}}, {score: {'$meta': "textScore"}}
});