为什么 Meteor 抱怨集合的插入方法已经定义了?

2024-01-08

谁能告诉我为什么下面的代码会抛出以下错误? :

Error: A method named '/players/insert' is already defined 

我是 Meteor 和 Coffeescript 的新手,所以我可能会忽略一些简单的东西。

这是我将排行榜示例移植到 CoffeeScript 的版本:

###
Set up a collection to contain player information. On the server,
it is backed by a MongoDB collection named "players."
###
Players = new Meteor.Collection("players")

if Meteor.is_client
  Template.leaderboard.players = ->
    Players.find({}, {sort: {score: -1, name: 1}})

  Template.leaderboard.selected_name = ->
    player = Players.findOne(Session.get "selected_player")
    player and player.name

  Template.player.selected = -> if Session.equals("selected_player", this._id) then "selected" else ''

  Template.leaderboard.events = {
    'click input.inc': ->
      Players.update(Session.get("selected_player"), {$inc: {score: 5}})
  }

  Template.player.events = {
    'click': ->
      Session.set("selected_player", this._id)
  }

# On server startup, create some players if the database is empty.
if Meteor.is_server
  Meteor.startup ->
    if Players.find().count() is 0
      names = [
                "Ada Lovelace"
                "Grace Hopper"
                "Marie Curie"
                "Carl Friedrich Gauss"
                "Nikola Tesla"
                "Claude Shannon"
              ]
      Players.insert({name: name, score: Math.floor(Math.random()*10)*5}) for name in names

完整的堆栈跟踪如下:

[[[[[ ~/dev/meteor/leaderboard ]]]]]

Running on: http://localhost:3000/

node.js:201
        throw e; // process.nextTick error, or 'error' event on first tick
              ^
Error: A method named '/players/insert' is already defined
    at app/packages/livedata/livedata_server.js:744:15
    at Function.<anonymous> (app/packages/underscore/underscore.js:84:24)
    at [object Object].methods (app/packages/livedata/livedata_server.js:742:7)
    at new <anonymous> (app/packages/mongo-livedata/collection.js:111:13)
    at app/leaderboard.js:4:11
    at /Users/alex/dev/meteor/leaderboard/.meteor/local/build/server/server.js:109:21
    at Array.forEach (native)
    at Function.<anonymous> (/Users/alex/dev/meteor/leaderboard/.meteor/local/build/server/underscore.js:76:11)
    at /Users/alex/dev/meteor/leaderboard/.meteor/local/build/server/server.js:95:7
Exited with code: 1

我正在运行 Meteor 版本 0.4.0 (8f4045c1b9)

预先感谢您的帮助!


如果您复制了文件,无论使用 Coffeescript 还是纯 JavaScript,您也会收到此错误。例如,将源文件复制到名为 Backup 的子目录会产生此错误,因为 Meteor 会合并子目录中的文件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 Meteor 抱怨集合的插入方法已经定义了? 的相关文章

随机推荐

  • 多选,Jquery:检查我的多选是否至少应选择一个选项

    您好 我将总结我的问题 希望您能理解 主要目标 在点击选择按钮之前检查是否至少选择了一个选项 否则 如果在没有选择至少一个选项的情况下单击选择按钮 则会显示一条消息 请选择至少一个选项 Purpose 我的其他代码中有一些原因需要一个选择按
  • 在用户定义函数中使用 step() 时丢失对象错误

    5天了还是没有回复 从西蒙的评论中可以看出 这是一个可重现且非常奇怪的问题 似乎只有当具有非常高预测能力的逐步回归被包装在函数中时才会出现这个问题 我已经为此苦苦挣扎了一段时间 任何帮助将不胜感激 我正在尝试编写一个运行多个逐步回归并将其全
  • Django 分页,包含下一个、上一个、计数

    我正在尝试进行分页并阅读此链接 使用 API View 在 Django Rest Framework 中分页 https stackoverflow com questions 29071312 pagination in django
  • Firebug 控制台中的对象

    这是我发布的问题的扩展here https stackoverflow com questions 11750145 javascript trouble using for in to iterate through an object
  • 如何获取正在运行的占用 100% cpu 的 java 程序的完整堆栈跟踪?

    我确实有一个詹金斯实例 它陷入某种无限循环中 没有任何可见的活动 我可以得到pid那么如何生成可用于错误报告的跟踪呢 我在linux上运行 尝试用jstack http download oracle com javase 1 5 0 do
  • 从 Illuminate\Html 切换到 Collective\Html,未找到类“Illuminate\Html\HtmlServiceProvider”

    我更新了composer json删除照亮 html并添加 require laravelcollective html 5 1 我从中删除了提供者 别名app php对于 Illuminate Html 并添加了替换项 Collectiv
  • 如何通过 moment.js 获取最近的日期?

    日期列表 const datesToBeChecked 2020 07 06 2020 07 13 2020 07 20 检查日期 const dateToCheckFor 2020 07 07 如何使用 moment js 获取日期数组中
  • PHP 字符串转整数异常

    我在 HackerRank 上遇到一个问题 第 16 天 异常 字符串到整数 https www hackerrank com challenges 30 exceptions string to integer 简而言之任务是 读取一个字
  • Laravel 将 http 添加到 url

    Laravel 5 0 中是否有一个助手可以自动将 http 添加到没有它的 url 中 这与 codeigniter 类似prep url可以找到的here https ellislab com codeigniter user guid
  • 如何在 JavaScript 中动态创建 HTML 页面

    是否可以用 JavaScript 动态创建完整的 HTML 页面 基本上 我正在创建一个 HTML 编辑器在浏览器中我想要做的是将 HTML 代码放在屏幕顶部的文本区域中 并在屏幕底部的 HTML 页面预览中 问题是它不仅仅是小的 HTML
  • C# JSON 自定义序列化

    有没有一种方法 库允许我自定义类似于 GSON 自定义序列化器的 JSON 序列化 这是我想要得到的 这个对象 KeyValuePair 年龄 10 myAge 通常会被序列化为 我的年龄 关键 年龄 价值 10 虽然我希望它像这样序列化
  • 矢量与圆锥的交点

    我有一个向量A定义为 Ao t Ad 我还有一个带有顶点的圆锥体 圆锥尖 V 轴方向D 基半径R和身高H 如何找到向量和圆锥之间的交点 我正在使用 glm 进行数学计算 Here s a simple illustration 我没有处理光
  • 按频率对 Javascript 数组进行排序,然后过滤重复项

    获取 javascript 数组 按值的频率排序 然后过滤唯一值的优雅方法是什么 So apples oranges oranges oranges bananas bananas oranges becomes oranges banan
  • 关注有值的输入字段

    我专注于 jQuery 的输入字段 input text focus 输入字段中已有一些文本值 当我聚焦时 光标在最后一个字母之后闪烁 我如何将光标放在第一个字母之前 你可以使用我为你创建的这个小插件 修改自这个脚本 http blog v
  • 如何在CoordinatorLayout中的Viewpager下面获取Adview

    此刻AdView出现在里面ViewPager所以它会阻止应用程序中的内容 我怎样才能得到AdView出现在下面ViewPager而不是在里面 我试过把AdView in a RelativeLayout以下ViewPager但随后AdVie
  • 具有 CRUD 方法的类违反了单一职责原则?

    我试图理解单一责任原则 我有以下问题 单一职责原则 SRP 规定 永远不应该 班级变更的原因不止一个 通常我们的Resource Service和Repository类有 创建 读取 更新和删除方法 我们正在将每个班级更改为 修改任何这些操
  • BigQuery 下载或导出为 JSON 不考虑类型

    我在 BigQuery 中运行的查询 SELECT 5 as a 当我运行上述查询并选择时得到的架构另存为表格 当我将查询结果下载为 JSON 时得到的 JSONor当我导出表时 a 5 这不应该是 a 5 From 导出表数据 导出限制
  • C# Mysql - 在异步等待服务器的数据库查询上使用锁

    I have TcpListener类和我正在使用async await读写 对于该服务器 我创建了单个数据库实例 在其中准备了所有数据库查询 但对于不止一个TcpClient我不断遇到异常 类型异常MySql Data MySqlClie
  • 找不到模块“file-name.png”或其相应的类型声明 - Typescript React

    我正在尝试在我的打字稿反应项目中导入一个 png 如下所示 import logo from assets Logo svg 我收到了这个 TS 错误 Cannot find module assets Logo svg or its co
  • 为什么 Meteor 抱怨集合的插入方法已经定义了?

    谁能告诉我为什么下面的代码会抛出以下错误 Error A method named players insert is already defined 我是 Meteor 和 Coffeescript 的新手 所以我可能会忽略一些简单的东西