【问题标题】:Query with variables in mongoose [duplicate]用猫鼬中的变量查询[重复]
【发布时间】:2015-12-12 07:33:50
【问题描述】:

查询如下所示的用户:

var getUser = function(query) {
  var q = query.q, by = query.by === 'id' ? '_id' : query.by;
  Account.findOne({by:q}).exec(function(error, result) {
    console.log('error: ' + error);
    console.log('result: ' + result);
  });
}
getUser({by: 'id', q: '53mklmrt34klm'});

结果是:

error: null

result: null

有没有办法同时查询数据和字段名中的变量?

【问题讨论】:

    标签: javascript node.js mongodb mongoose


    【解决方案1】:

    您为Account.findOne 定义JSON query param 的方式不正确。

    代替:

    Account.findOne({by:q}).exec(function(error, result) {/* Your code here */});
    

    用途:

    var queryParam = {};
    queryParam[by] = q;
    Account.findOne(queryParam).exec(function(error, result) {/* Your code here */});
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-03
    • 1970-01-01
    • 1970-01-01
    • 2014-07-25
    • 1970-01-01
    • 2019-08-07
    • 2018-10-21
    • 2015-05-19
    相关资源
    最近更新 更多