我正在尝试使用node.js,mongodb,express和mongojs来执行Rest API。 这是到目前为止的代码其中工程:Howe为mongodb使用get.find(...。),就像使用sql的LIKE操作一样?
app.get('/personen/:suche',function(req,res){
var suche = req.params.suche;
console.log(suche);
db.personen.find(function (err, docs){
console.log(docs);
res.json(docs);
});
});
现在我已经在数据库中的所有的人。
变量“suche”是一个3 char字符串。现在我想问一下这个字符串是否为名字的一部分 示例suche =“max” 输出最大值,最大值,最大值,最大值,其余信息给这个人。
像在sql中的操作LIKE,但我想念的选择部分是我可以说我想要的。 在网络上进行了一些研究之后,我认为它应该是朝着这个方向发展的,但它不起作用。
app.get('/personen/:suche',function(req,res){
var suche = req.params.suche;
console.log(suche);
db.personen.find({name: /suche/},function (err, docs){
console.log(docs);
res.json(docs);
});
});
我不确定这个错误是否真的在find函数中,或者我错过了一个演员阵容。 我没有收到错误消息,只是空白的文档。
非常感谢您对每一个想法,并对坏英语感到抱歉。
PS:如果有帮助,那么数据库内容的
> db.personen.find().pretty()
{
"_id" : ObjectId("58b9e43fd90231e4c9bb0b61"),
"vorname" : "max",
"nachname" : "muster",
"nr" : "1111"
}
{
"_id" : ObjectId("58b9e43fd90231e4c9bb0b62"),
"vorname" : "hans",
"nachname" : "müller",
"nr" : "2222"
}
{
"_id" : ObjectId("58b9e43fd90231e4c9bb0b63"),
"vorname" : "friz",
"nachname" : "meier",
"nr" : "3333"
}
{
"_id" : ObjectId("58b9e43fd90231e4c9bb0b64"),
"vorname" : "christoph",
"nachname" : "hugetobler",
"nr" : "4444"
}
{
"_id" : ObjectId("58b9e43fd90231e4c9bb0b65"),
"vorname" : "helmut",
"nachname" : "boss",
"nr" : "5555"
}
{
"_id" : ObjectId("58b9e43fd90231e4c9bb0b66"),
"vorname" : "kevin",
"nachname" : "küffer",
"nr" : "6666"
}
{
"_id" : ObjectId("58b9e43fd90231e4c9bb0b67"),
"vorname" : "maximilian",
"nachname" : "murer",
"nr" : "7777"
}
{
"_id" : ObjectId("58b9e43fd90231e4c9bb0b68"),
"vorname" : "maxi",
"nachname" : "mayer",
"nr" : "8888"
}
http://stackoverflow.com/questions/ 3305561/how-to-query-mongodb-like-like –
Karl,在链接副本中查看[this answer](http://stackoverflow.com/a/31938474/1259510),因为'suche'是一个变量。你目前的尝试正在寻找字符串“suche”本身。 – JohnnyHK