我有一个网络表格。我希望能够填写表单,然后从链接到搜索页面的表单中,按用户名搜索所有数据。例如,如果有一个名为Katy Bell的用户,我想返回该用户的所有信息。如果没有,我想说些不存在的用户。
我尝试使用$ text选项进行查询并创建索引。但是,它不起作用。我能够创建表格,填写表格,并通过链接为所有用户返回信息。但是,我希望能够转到搜索字段并仅搜索一个用户。
app.post("/search", function(req, res) {
col.collection('feedbacks').find({
"$text": {
"$search": req.body.query
}
}, {
document: 1,
created: 1,
_id: 1,
feedbacks: {
$meta: "feedbacks"
}
}, {
sort: {
feedbacks: {
$meta: "feedbacks"
}
}
}).toArray(function(err, items) {
res.send(pagelist(items));
})
});
app.listen(process.env.PORT || 3000, process.env.IP || '0.0.0.0' );
});
function pagelist(items) {
result = "<html><body><ul>";
items.forEach(function(item) {
itemstring = "<li>" + item._id + "<ul><li>" + item.feedbacks +
"</li><li>" + item.created + "</li><li>" + item.document +
"</li></ul></li>";
result = result + itemstring;
});
result = result + "</ul></body></html>";
return result;
}