Meter 将新对象推送到集合中的数组

长臂猿

我正在尝试通过推送到集合中已经存在的数组来更新集合。

这是我尝试运行的更新功能:

Games.update({ _id: game._id }, {
  $push: { players: { name: playerName } },
});

这是我在控制台中遇到的错误:

update failed: MongoError: Cannot update 'players' and 'players' at the same time

相关架构:

Player = new SimpleSchema({
  name: {
    type: String,
    label: 'name',
    max: 50,
  },
});

Schemas.Game = new SimpleSchema({
  ...
  players: {
    type: [Player],
    label: 'Players',
    autoValue: function () {
      return [];
    },
  },
});

我正在使用autoValueforplayers数组在创建新游戏时对其进行初始化。这可能是添加第一个玩家时的问题吗?

一些帮助将不胜感激。

菲利普·努努

编辑: @Logiwan992 尝试使用 defaultValue 而不是 autoValue。我相信您正在使用 autoValue 来设置的值,players所以它不是未定义的。但是在您的实现中,当您的文档有更新时, autoValue 将运行。

defaultValue将在第一次创建文档时运行。但是如果您仍然选择使用autoValue,您可能还想检查它是否是更新并返回undefine像这样

players: { type: [Player], label: 'Players', autoValue: function () { if (this.isUpdate) { return undefined; } return []; }, },

返回 undefined 将确保使用新的更新值。我的建议是使用

players: { type: [Player], label: 'Players', defaultValue: [], },

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Meter中为每个循环使用变量内部

来自分类Dev

Node/JS mongoose REST API 如何将新对象推送到一个集合中的嵌套对象数组中

来自分类Dev

将新的卡片对象推送到嵌套的对象数组

来自分类Dev

通过新数组映射然后将项目推送到现有数组中的对象

来自分类Dev

如何将新值推送到 JavaScript 对象数组

来自分类Dev

调用 getItems() 时将添加的对象推送到新数组

来自分类Dev

对象可以了解多少其他对象?这是违反得墨meter耳的法律的例子吗?

来自分类Dev

如何使用 Class 语法将新的 Book 对象推送到空数组中?

来自分类Dev

如何将数组推送到对象数组中?

来自分类Dev

如何在Meter.call()方法中访问Angular 2路由器

来自分类Dev

在 InfluxDB 中添加否定条件:AND NOT (meter_id='500' AND conso_prod='Prod')

来自分类Dev

Xubuntu的GUI Internet Meter

来自分类Dev

如何将 json 数据从 json 文件推送到具有新集合的数组中并更新文件

来自分类Dev

将新对象推送到嵌套对象

来自分类Dev

将 JSON 数据推送到 ANGULAR 对象数组中

来自分类Dev

如何使用 R 将 json 对象推送到数组中

来自分类Dev

使用Mongoose将项目推送到对象中的数组

来自分类Dev

将新对象推送到表格组件

来自分类Dev

仅将某些项目从对象数组推送到新数组数组

来自分类Javascript

将获取的数据推送到对象数组

来自分类Dev

将 new 作为对象推送到数组

来自分类Dev

将项目推送到嵌套对象数组

来自分类Dev

将js对象推送到数组

来自分类Java

org.getools-NoSuchFieldError:METER

来自分类Dev

推送到数组中的多维对象

来自分类Dev

将对象推送到 JSON 数组中

来自分类Dev

如何从 Mongoose 推送到对象中的数组?

来自分类Dev

查找并推送结果将两个对象推送到数组中

来自分类Dev

将新数字“推送”到对象数组中

Related 相关文章

  1. 1

    在Meter中为每个循环使用变量内部

  2. 2

    Node/JS mongoose REST API 如何将新对象推送到一个集合中的嵌套对象数组中

  3. 3

    将新的卡片对象推送到嵌套的对象数组

  4. 4

    通过新数组映射然后将项目推送到现有数组中的对象

  5. 5

    如何将新值推送到 JavaScript 对象数组

  6. 6

    调用 getItems() 时将添加的对象推送到新数组

  7. 7

    对象可以了解多少其他对象?这是违反得墨meter耳的法律的例子吗?

  8. 8

    如何使用 Class 语法将新的 Book 对象推送到空数组中?

  9. 9

    如何将数组推送到对象数组中?

  10. 10

    如何在Meter.call()方法中访问Angular 2路由器

  11. 11

    在 InfluxDB 中添加否定条件:AND NOT (meter_id='500' AND conso_prod='Prod')

  12. 12

    Xubuntu的GUI Internet Meter

  13. 13

    如何将 json 数据从 json 文件推送到具有新集合的数组中并更新文件

  14. 14

    将新对象推送到嵌套对象

  15. 15

    将 JSON 数据推送到 ANGULAR 对象数组中

  16. 16

    如何使用 R 将 json 对象推送到数组中

  17. 17

    使用Mongoose将项目推送到对象中的数组

  18. 18

    将新对象推送到表格组件

  19. 19

    仅将某些项目从对象数组推送到新数组数组

  20. 20

    将获取的数据推送到对象数组

  21. 21

    将 new 作为对象推送到数组

  22. 22

    将项目推送到嵌套对象数组

  23. 23

    将js对象推送到数组

  24. 24

    org.getools-NoSuchFieldError:METER

  25. 25

    推送到数组中的多维对象

  26. 26

    将对象推送到 JSON 数组中

  27. 27

    如何从 Mongoose 推送到对象中的数组?

  28. 28

    查找并推送结果将两个对象推送到数组中

  29. 29

    将新数字“推送”到对象数组中

热门标签

归档