风帆不会填充用户(未定义)

时间:2015-04-19 14:31:02

标签: node.js sails.js waterline sails-mongo

我尝试将聊天消息与用户关联起来。但是populate函数为我提供了一个用户undefined

//message.js
module.exports = {

  attributes: {

    user:{
      model: 'User'
    },
    message:{
      type:'string',
      required:true
    }
  }

};

我保存了一条消息条目,然后尝试用该用户填充消息

module.exports = {

  test: function(req, res){

    var data = {
      user : "5533b9f00fe12ff020c67225",
      message : 'auto generated'
    };

    Message.create(data, function messageCreated(err, message){

      if(err) return res.negotiate(err);

          Message.find().populate('user').exec(function(err, messages){
            if(err) return res.negotiate(err);

            res.json(messages);

          });

      });

  }

};

但是当我尝试填充时,它总是会给我用户undefined

到目前为止我尝试过:

  • 获取一个用户并填充他的所有消息:工作!
  • 找到一个用户根据找到的消息关联的userId前一步,确保用户存在:工作!
  • 更改Assosiation所以另一个消息而不是用户,而不是使用一个“主消息”填充消息:工作!

我不明白为什么它适用于其他模型但不适用于用户模型

0 个答案:

没有答案