我正在关注meteortips的流星教程,我到了你在浏览器控制台中创建一个集合的部分。创建集合是有效的,但它不允许我在其中插入任何内容。(PlayersList = new Meteor.Collection('players');
)
请参阅以下内容:
PlayersList.insert({ name: 'Alex', score: 42 });
"rpPamgZEZM9opCzHz"
debug.js:41 insert failed: Method not found
我们甚至还得到了哈希,就好像插入工作一样。
键入PlayersList.find().fetch();
会返回一个空数组:(
我在Windows 8.1上使用最新版本的Meteor和MongoDB 2.6版
如果有人可以帮助我,我会非常感激:)。
答案 0 :(得分:4)
您已在客户端上定义了集合PlayersList = new Meteor.Collection('players');
,但尚未在服务器上定义。
如果您有类似if(Meteor.isClient) {..}
(或/client
)目录的内容,则代码不会在服务器上运行。确保您还在PlayersList = new Meteor.Collection('players');
(或if(Meteor.isServer)
)目录中放置/server
。
最好的办法是将它放在根目录之外,以便它在客户端和服务器上运行。
当您在客户端上插入文档时,消息将被传输到服务器&它试图将其插入数据库。该集合未在服务器端定义,因此它使用消息method not found.