通过 Telegram Bot 进行 Mangoosastic 全文搜索
Mangoosastic Full Text Search via Telegram Bot
我有一个来自 Telegram Bot 的 msg.text
变量,msg.text
是我的架构名称,我应该如何获取包含用户输入的单词的名称?
架构:
const parentSchema = new Schema({
_id: Number,
name: String,
});
parentSchema.plugin(mongoosastic, {
hosts: [
'localhost:9200'
]
});
const Mq = mongoose.model('Mq', parentSchema);
module.exports = Mq;
代码:
bot.onText(/\/search/, (msg) => {
// mangoosastic search Code
});
例如,在我的数据库中,我有 {rock
、book
、pre rock
、Cat
、rock after
和 pre rock after
}
和用户 msg.txt
= ro
我应该如何获取 console.log 单词包含 ro
在 node.js 项目中:
我需要得到:
rock
pre rock
rock after
pre rock after
我的问题用原生 MongoDB 正则表达式解决了
parentSchema.index({ name: 'text' });
Mq.find(
{ "name": { "$regex": "ro", "$options": "i" } },
function(err,docs) {
}
);
我有一个来自 Telegram Bot 的 msg.text
变量,msg.text
是我的架构名称,我应该如何获取包含用户输入的单词的名称?
架构:
const parentSchema = new Schema({
_id: Number,
name: String,
});
parentSchema.plugin(mongoosastic, {
hosts: [
'localhost:9200'
]
});
const Mq = mongoose.model('Mq', parentSchema);
module.exports = Mq;
代码:
bot.onText(/\/search/, (msg) => {
// mangoosastic search Code
});
例如,在我的数据库中,我有 {rock
、book
、pre rock
、Cat
、rock after
和 pre rock after
}
和用户 msg.txt
= ro
我应该如何获取 console.log 单词包含 ro
在 node.js 项目中:
我需要得到:
rock
pre rock
rock after
pre rock after
我的问题用原生 MongoDB 正则表达式解决了
parentSchema.index({ name: 'text' });
Mq.find(
{ "name": { "$regex": "ro", "$options": "i" } },
function(err,docs) {
}
);