0

我有许多收藏品成功地发布给了客户,但是其中一个很顽固:

在 DB 上有一个 Collection 'cargoes'。该集合包含两个文档,并且它们具有多个字段。

// in /lib/collections/cargoes.js
Cargoes = new Meteor.Collection('cargoes');

在服务器端,我们发布 /server/server.js

Meteor.publish('cargoes', function() { return Cargoes.find(); } );

在客户端,我们订阅了 /client/main.js

Meteor.subscribe('cargoes');

当我输入 Cargoes.find().fetch(); 在浏览器的(客户端)控制台中,我返回两个对象,它们只有我期望返回的对象的正确 _id 值,但没有其他字段

关于可能出现什么问题或如何调试的任何想法?

EDIT1 - 修正了代码中的一个错字,发布总是有回报,当我进入 StackOverflow 时我错过了它。

4

1 回答 1

4

您的发布功能没有回馈任何东西

Meteor.publish('cargoes', function() {
    return Cargoes.find(); 
});

-- 更新 -- 如果这不起作用,请通过 mongo shell 仔细检查对象是否有效。meteor mongomrt mongo。确保对象没有名为 "length" 的字段。确保您可以正确地 find().fetch() 服务器上的对象:

在文件 /server/main.js 中:

if ( Meteor.isServer ) {
  console.log(Cargoes.findOne());    
}
于 2013-07-11T07:10:30.017 回答