Я пытаюсь добавить новые значения в пару значений ключа в mongodb (mon goose) в nodejs - PullRequest
0 голосов
/ 16 июня 2020

У меня есть схема с полем категорий:

categories{
  category_1 : [],
  category_2 : [],
  category_3 :[] ,
}

Я пытаюсь указать идентификатор участника sh в определенной категории, поэтому после нажатия идентификатора в категории_1 это должно быть примерно так:

categories{
  category_1 : [contestant_id],
  category_2 : [],
  category_3 :[] ,
}

Это поля в реальной базе данных.

{ "_id" : ObjectId("5ee7e804311aa55316e5b20a"), "tournament_id" : "demo@gmail.com", "name" : "Updated Tournament", "event_date" : "2020-06-30", "last_entry" : "2020-06-29", "entry_fee" : 6000, "categories" : { "MU10" : [ ], "FU18" : [ ], "MU7" : [ ], "MU8" : [ ], "MSENIOR" : [ ], "FSENIOR" : [ ], "MU9" : [ ], "FU10" : [ ] }, "__v" : 0 }

Ответы [ 3 ]

1 голос
/ 16 июня 2020

Используйте $push для добавления в массив:

Например, чтобы добавить contestant_id в массив category_1:

db.TABLE.update(
   { _id: 1 },
   { $push: { category_1: contestant_id } }
)
0 голосов
/ 16 июня 2020

Вы можете сделать как показано ниже:

db.yourcollection.update(
   { _id: ObjectId("5ee7e804311aa55316e5b20a") },
   { $push: { "categories.MU10": "contestant_id" } }
)
0 голосов
/ 16 июня 2020

Итак, насколько я понимаю, вы хотите сделать sh contestant_id * categories.category_1, не так ли?

Для этого просто введите categories.category_1.push(contestant_id)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...