Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Sails.js对象在填充后具有未定义的集合_Javascript_Node.js_Sails.js - Fatal编程技术网

Javascript Sails.js对象在填充后具有未定义的集合

Javascript Sails.js对象在填充后具有未定义的集合,javascript,node.js,sails.js,Javascript,Node.js,Sails.js,每当我在Sails.js中填充集合时,值都会填充在modelName.associations.collectionName.value中。modelName.collectionName的值始终是未定义的,即使当我将对象表示为JSON时,所有内容都完美地显示出来 以文档()中给出的多对多关系为例,如果执行以下查询: User.findOne(1) .populate('pets') .exec(function(err, owner) {...}); 我将在owner.association

每当我在Sails.js中填充集合时,值都会填充在
modelName.associations.collectionName.value
中。
modelName.collectionName
的值始终是未定义的,即使当我将对象表示为JSON时,所有内容都完美地显示出来

以文档()中给出的多对多关系为例,如果执行以下查询:

User.findOne(1)
.populate('pets')
.exec(function(err, owner) {...});
我将在
owner.associations.pets.value
中获取pets集合,但
owner.pets
未定义

你知道这是怎么回事吗

编辑:

我已经复制了文档中给出的完全相同的示例(相同的
Pet.js
User.js
bootstrap.js
),并且我已经通过以下方式覆盖了
User.js
findOne
蓝图:

findOne: function (req, res) {

  User.findOne(req.params.id)
    .populate('pets')
    .exec(function(err, owner) {
      if (err) return res.send(err, 500);
      return res.json(owner);
    });

}
正如我所预料的,JSON响应是正常的,但是如果我在
exec(..)
函数中设置断点,
owner.pets
是未定义的。数据仅在
owner.associations.pets.value


这可能是我的Sails.js版本吗?它是0.10.0-rc11。

model.associations.pets.value
本质上是一个私有API,您不应该依赖它。在没有看到实际的模型和查询代码的情况下,很难说您的问题是什么,但是如果您的示例与上面的示例非常相似,那么我可以看到的第一个问题是您没有向
findOne
调用发送任何条件--它至少需要一个主键,或者一个具有查询条件的对象,例如{name:'dan}。是的,我忘了。。。编辑。我将尝试复制与文档中相同的示例,看看是否得到相同的结果。