无法将参数传递给 mongo 查找集合
Not able to pass parameter to mongo find collection
Req.params 在 db.collection.find 执行后获取值。有人可以告诉我这段代码做错了什么吗?
exports.findAll = function(req, res) {
var postal = parseInt(req.params.postal);
db.collection('ifscdata', function(err, collection) {
collection.find({'ADDRESS':/postal/}).toArray(function(err, items) {
res.send(items);
});
});
我应该根据邮政地址对地址进行部分搜索。但是我无法将值传递给邮政,因为它只是在之后才获得值。
函数路径是这样的
app.get('/ifsc/:postal', ifsc.findAll);
示例 URL:
为什么要在 postal
之间加上斜线?
你试过吗?
exports.findAll = function(req, res) {
var postal = parseInt(req.params.postal);
db.collection('ifscdata', function(err, collection) {
collection.find({'ADDRESS': postal}).toArray(function(err, items) {
res.send(items);
});
});
看起来您需要在查询中使用正则表达式,请考虑使用 RegExp
对象包装变量,如下所示:
exports.findAll = function(req, res) {
var postal = req.params.postal,
regex = new RegExp(postal);
db.collection('ifscdata', function(err, collection) {
collection.find({'ADDRESS': regex}).toArray(function(err, items) {
res.send(items);
});
});
Req.params 在 db.collection.find 执行后获取值。有人可以告诉我这段代码做错了什么吗?
exports.findAll = function(req, res) {
var postal = parseInt(req.params.postal);
db.collection('ifscdata', function(err, collection) {
collection.find({'ADDRESS':/postal/}).toArray(function(err, items) {
res.send(items);
});
});
我应该根据邮政地址对地址进行部分搜索。但是我无法将值传递给邮政,因为它只是在之后才获得值。
函数路径是这样的
app.get('/ifsc/:postal', ifsc.findAll);
示例 URL:
为什么要在 postal
之间加上斜线?
你试过吗?
exports.findAll = function(req, res) {
var postal = parseInt(req.params.postal);
db.collection('ifscdata', function(err, collection) {
collection.find({'ADDRESS': postal}).toArray(function(err, items) {
res.send(items);
});
});
看起来您需要在查询中使用正则表达式,请考虑使用 RegExp
对象包装变量,如下所示:
exports.findAll = function(req, res) {
var postal = req.params.postal,
regex = new RegExp(postal);
db.collection('ifscdata', function(err, collection) {
collection.find({'ADDRESS': regex}).toArray(function(err, items) {
res.send(items);
});
});