/ / Чи можу я зберігати об’єкт JavaScript-карти в MongoDB метеора? - javascript, mongodb, meteor

Чи можу я зберегти об'єкт карти JavaScript у MongoDB метеорита? - javascript, mongodb, метеор

У мене є такий код:

myMapField = new Map();

for (var i = stuff.length; i--; ) {
myMapField.set(stuff.id, { name: stuff.name, type: Types.MY_TYPE });
}

Meteor.users.update(Meteor.userId(), {
$set: { "profile.myMapField": myMapField }
});

Це не працює, і повідомлення про помилку не допомагає ("невизначено").

Чи є спосіб зберігати об’єкт JavaScript Map у MongoDB Meteor?

Відповіді:

0 для відповіді № 1

Я не думаю, що існує прямий спосіб вставити об’єкт Map в MongoDB на даний момент. Можливе вирішення, яке я можу запропонувати, - це:

  1. Ітерація над об’єктом Map, і
  2. Зберігайте пари ключ-значення окремо в БД

Схема може виглядати приблизно так:

{
_id: someId,
map: [{
key: key1,
value: value1
},{
key: key2,
value: value2
},{
key: key3,
value: value3
},{
key: key4,
value: value4
},{
...
}]
}

Допоміжні функції для перетворення об’єктів Map у цей формат і навпаки повинні бути записані для цього.