我有一个问题我想实现mongodb的全文搜索,所以我被困在因为数据库创建了一个文本搜索索引,我想有多个字段用于搜索..架构的例子:
name: {
type: String,
required: true,
trim: true,
index: 'text'
},
sub_name: {
type: String,
trim: true
},
location: [{
geo: {
type: [Number],
index: '2d'
},
description: {
type: String,
trim: true,
index: 'text'
},
address: {
city: {
type: String,
index: 'text'
},
street: {
type: String,
index: 'text'
},
state: {
type: String,
index: 'text'
}
},

那么这样做的诀窍是什么?我如何应用mutliple字段进行全文搜索? thx for anwser ...
答案 0 :(得分:4)
尝试类似的东西:
var schema= new Schema({
name: String,
sub_name: String,
tags: { type: [String], index: true } // field level
});
schema.index({ name: 'text', sub_name: 'text' }); // schema level
答案 1 :(得分:0)
创建多个文本索引使用此功能。这将有助于全文搜索
查找索引:db.collectionName.getIndexes();
比下降索引名称:db.campaigns.dropIndex('name_text');
在多个键上创建索引:db.campaigns.ensureIndex({ name: 'text' , description: 'text', tags : 'text' });