【问题标题】:Multi Insert issue in MeteorMeteor 中的多插入问题
【发布时间】:2013-11-24 01:42:42
【问题描述】:

首先,我知道排行榜示例中的方式,它使用循环来执行多插入。但是,当我这样做时,我在服务器控制台上收到一个 mongoDB 错误,停止插入。我认为问题可能是由于coffeescript总是返回,所以我在纯JS中尝试了它,它仍然不起作用(除了在浏览器控制台上)。

这里是多插入的代码

#find opponent deck
    opponent_deck = (Card_Reference.find deck_id: opponent.deck).fetch()

# save a temporary deck
    _.each opponent_deck, (card) ->
        Deck.insert card

代码本身有问题吗?

【问题讨论】:

  • 你得到什么错误?是否与重复索引键有关?
  • 错误是关于“对象不是函数”的内容。这是一个很长的错误(大约 8 行)。但是,是的,在删除 ID 字段后,它工作得非常好。谢谢。

标签: javascript mongodb coffeescript meteor


【解决方案1】:

@Tarang 是对的,您应该在重新插入卡之前从卡中删除_id。此外,您可能想要更新 deck_id 参数以反映您正在将卡片添加到临时牌组:

# save a temporary deck
    _.each opponent_deck, (card) ->
        delete card._id
        card.deck_id = tmp_deck_id
        Deck.insert card

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-09
    • 2013-12-21
    相关资源
    最近更新 更多