Node.js、mongojs、mongodb。正規表現を使用してスキルのリストを検索しています。ここに私のサーバーコードがあります:
var nconf = require('nconf');
var db = require('mongojs').connect(nconf.get('mongolab:connection'), ['skills', 'users']);
app.get('/api/skill', function(req, res){
console.log('searching for ' + req.query['q']);
var query = '{name: /' + req.query['q'] + '/i}';
console.log('query: ' + query);
db.skills.find(query, function(err, data){
console.log('returning ' + JSON.stringify(data));
if(!err){
res.writeHead(200, {'content-type': 'text/json' });
res.write( JSON.stringify(data) );
res.end('\n');
}
});
});
リストに「asp.net」という値があります。コンソール ログには次のように出力されます。
searching for .net
query: {name: /.net/i}
returning []
MongoHub を使用して同じサーバー/データベースに接続し、ステートメントをクエリ フィールドに貼り付けて、レコードを取得します。
{
"name": "asp.net",
"description": "",
"_id": {
"$oid": "500b4aae14f7960e91000001"
}
}
助言がありますか?