提前谢谢。我有一个mongoose模式,如下所示:
var bookSchema = new mongoose.Schema({
name: { type: String, index: true, default: '' },
text: { type: String, index: true, default: '' },
date: { type: Date, default: Date.now },
price: { type: Number, default: 0 } });
bookSchema.index({text: 1, name: 1}, {unique: true});我的问题是,当我在名为" text“的字段中搜索任何文本时,它都不起作用。可能存在命名冲突,是否必须将字段名称更改为文本以外的其他名称...
Book.find( { $text : { $search : 'mongoose is great' } } )...发布于 2017-05-10 10:58:55
text是MongoDB中的保留字。不要用这个词,试着用另一个词。
发布于 2017-05-11 14:24:21
感谢您的帮助。
我遇到的问题是一个小小但痛苦的教训。事实证明,我进入了我的mLabs控制台,并注意到集合的索引总数超过了16!因此删除了所有索引并添加了我需要的索引。结果很棒,解决了我的问题。
所以我猜,如果你一直添加索引而不删除前一个索引,你最终会得到不可预测的结果。
再次感谢所有回答的人。
https://stackoverflow.com/questions/43882781
复制相似问题