在我的环回应用程序中,我有一个名为test的模型。我需要搜索详细信息并根据多个条件显示详细信息。这是搜索字段的状态,优先级,消息和ID。我想根据这些搜索字段来显示详细信息。假设我给出状态是开放的,优先级低,细节应该满足这两个条件(即“AND”运算符)。我应该如何实现呢?我的数据库是Arango Db。我所拥有的是common / models / test.js
test.js
module.exports = function (Test) {
Test.search = function(callback){
}
};
我该如何实现?我是环绕和角度的新手。任何帮助都会有所帮助。
答案 0 :(得分:1)
记录实施远程方法here。
它需要两件事。首先,创建将远程调用的函数。在这里,您已将其称为search
。
函数参数应包括所有请求参数(status
priority
message
id
)和回调作为最后一个参数。
然后,将此功能注册为远程方法。
在您的情况下,它应该提供以下代码
module.exports = function(Test){
Test.search = function(status, priority, message, id, cb) {
var results = ...// Your custom logic to find the results
if (err) return cb(err); // if something went wrong. err is returned by your custom logic
cb(null, results); // if results were found
}
Test.remoteMethod('search', {
http: {
verb: 'get'
},
accepts: [
{arg: 'status', type: 'string', http: { source: 'query' } },
{arg: 'priority', type: 'string', http: { source: 'query' } },
{arg: 'message', type: 'string', http: { source: 'query' } },
{arg: 'id', type: 'number'},
],
returns: {arg: 'results', type: 'Object'} // To return a JSON object for instance
});
};
然后,使用GET api/Tests/search?status=open&priority=high&...
要搜索条目,您还可以使用querying approach