我正在使用 mongo-go-driver 并尝试使用文本搜索
我正在创建这样的索引
opts := options.CreateIndexes().SetMaxTime(10 * time.Second)
db.Collection("my_collection").Indexes().CreateMany(
context.Background(),
[]mongo.IndexModel{
{
Keys: bsonx.Doc{{"title", bsonx.Int32(-1)}},
},
{
Keys: bsonx.Doc{{"info.tags", bsonx.Int32(-1)}},
},
},
opts,
)
...在查询时我正在这样做
collection := db.Collection("my_collection")
cur, err := collection.Find(context.Background(), bson.M{ "$text": bson.M{ "$search": query }})
我在调用查询时得到了这个
(IndexNotFound) text index required for $text query
exit status 1
最佳答案
您需要有一个 text
index在至少 1 个字段上才能使查询正常工作。
尝试在任何字段上创建文本索引并重试
关于mongodb - $text 查询所需的 mongo-go-driver (IndexNotFound) 文本索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55355789/