【问题标题】:Meteor minimongo insert method not workingMeteor minimongo 插入方法不起作用
【发布时间】:2015-04-18 12:29:43
【问题描述】:

我正在关注meteortips 中的meteor 教程,并进入了您在浏览器控制台中创建集合的部分。创建集合有效,但它不允许我向其中插入任何内容。(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 和 MongoDB 版本 2.6 上使用最新版本的 Meteor

如果有人可以帮助我,我将非常感谢:)

【问题讨论】:

    标签: meteor minimongo


    【解决方案1】:

    您已在客户端上定义了集合PlayersList = new Meteor.Collection('players');,但尚未在服务器上定义它。

    如果您有类似if(Meteor.isClient) {..}(或在/client)目录中的内容,则代码不会在服务器上运行。确保您还在if(Meteor.isServer)(或/server)目录中放置了PlayersList = new Meteor.Collection('players');

    最好的办法是将它放在根目录之外,这样它就可以在客户端和服务器上运行。

    当您在客户端插入文档时,消息将传输到服务器并尝试将其插入数据库。该集合未在服务器端定义,因此它使用消息method not found. 拒绝它

    【讨论】:

    • 哇,谢谢!我花了一些时间来适应整个“共享代码”的概念。此外,教程没有像你一样正确解释这一点!
    猜你喜欢
    • 1970-01-01
    • 2012-08-05
    • 1970-01-01
    • 2014-06-17
    • 2017-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-04
    相关资源
    最近更新 更多