RaS*_*She 5 mongoose mongodb node.js
从 URL 解析的查询,例如:
?year=2014&cat=sonny
Run Code Online (Sandbox Code Playgroud)
或者它可以是
?year=2014&id=223&something=high&cat=sonny
Run Code Online (Sandbox Code Playgroud)
我可以
Model.find({year: 2014}).where('cat').equals('sonny')
Run Code Online (Sandbox Code Playgroud)
但是如果有第二个例子呢?我怎样才能让它动态?
您可以将查询设置为变量并添加多个条件:
var query = Model.find();
query.where('year').equals('2014');
query.where('cat').equals('sonny');
query.where('id').equals('223');
query.where('something').equals('high');
query.exec(callback);
Run Code Online (Sandbox Code Playgroud)
对于动态,只需将查询传递给 for 循环并遍历过滤器对象数组:
var query = Model.find();
var filters = [
{fieldName: "year", value: "2014"},
{fieldName: "cat", value: "sonny"}
...
];
for (var i = 0; i < filters.length; i++) {
query.where(filters[i].fieldName).equals(filters[i].value)
}
query.exec(callback);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5288 次 |
| 最近记录: |