【问题标题】:Return mongoose result in a function在函数中返回猫鼬结果
【发布时间】:2018-07-30 20:26:51
【问题描述】:

我正在尝试从我的 mongoose 查找操作中返回结果。我知道已经提出了很多问题,但我认为这是不同的。这是我的用户:

var UserSchema = new mongoose.Schema({
    variable: {type: mongoose.Schema.ObjectId, ref: 'Variable'}
});

我的用户有一个方法来检索他的变量。这就是问题所在。

UserSchema.methods.getVariable = function()  {
   //TODO ?
}

我不知道如何填充我的字段,然后返回填充的结果...

【问题讨论】:

    标签: javascript node.js mongodb mongoose promise


    【解决方案1】:

    我认为你可以使用populate

    var UserSchema = new mongoose.Schema({
      variable: {type: mongoose.Schema.ObjectId, ref: 'Variable'}
    });
    
    UserSchema.
      findOne({your:"query"}).
      populate('variable').
      exec().
      then(
        user=>console.log("user is:",user)
      );
    

    【讨论】:

    • 这是我首先做的,但我需要返回我获得的值。
    • @JérémyMisiti 你认为user=>console.log("user is:",user) 是什么?
    • 我没有看到箭头对不起!所以当我打电话给我的用户时这会起作用:user.getVariable()? :o
    • @JérémyMisiti 不确定您为什么要这样做。您可以使用填充查询用户并在结果上执行以下操作:user.variable
    • 获取我的变量。例如:if (user.getVariable("var name").value == "true")
    猜你喜欢
    • 2014-05-30
    • 2018-08-22
    • 2015-08-26
    • 1970-01-01
    • 1970-01-01
    • 2023-04-11
    • 2015-08-04
    • 2016-03-27
    相关资源
    最近更新 更多