如何使用 $resource 创建自定义查询,将参数作为 req.body 传递给 mongoose 中的 find 方法?
How can I create a custom query using $resource that passes arguments to the find method in mongoose as req.body?
我想使用这样的自定义查询方法:
$scope.modules = dataFac.getModules().customQuery({name: /test/})
.$promise.then(function(response){
$scope.modules = response;
},
function(response){
console.log(response.status);
});
在services.js中,我有:
dataFac.getModules = function(){
return $resource(baseUrl+'modules', null, {'update': {method: 'PUT'}, 'customQuery': {method: 'GET'}});
};
在moduleRouter.js中,我有:
moduleRouter.route('/')
.get(function(req, res, next){
Modules.find(req.body, function(err, modules) {
if (err) {
console.log(err);
next(err);
}
res.json(modules);
});
})
编辑:这是将 {name: /test/} 作为查询参数传递 (baseUrl/modules?name=/test/)。我原以为它会作为 req.body 传递,它可以充当 Module.find(req.body, callback) 方法的过滤器。我错过了什么?
您的 get 方法中没有 req.body。就在 post 个中。尝试改用 req.query。
我想使用这样的自定义查询方法:
$scope.modules = dataFac.getModules().customQuery({name: /test/})
.$promise.then(function(response){
$scope.modules = response;
},
function(response){
console.log(response.status);
});
在services.js中,我有:
dataFac.getModules = function(){
return $resource(baseUrl+'modules', null, {'update': {method: 'PUT'}, 'customQuery': {method: 'GET'}});
};
在moduleRouter.js中,我有:
moduleRouter.route('/')
.get(function(req, res, next){
Modules.find(req.body, function(err, modules) {
if (err) {
console.log(err);
next(err);
}
res.json(modules);
});
})
编辑:这是将 {name: /test/} 作为查询参数传递 (baseUrl/modules?name=/test/)。我原以为它会作为 req.body 传递,它可以充当 Module.find(req.body, callback) 方法的过滤器。我错过了什么?
您的 get 方法中没有 req.body。就在 post 个中。尝试改用 req.query。