Как сохранить ассоциативный массив объектов в мангусте - PullRequest
0 голосов
/ 09 июля 2020

У меня есть большой набор данных, который структурирован следующим образом:

[
  Person1: { Mid: 0, Support: 0, Jungle: 0, Top: 0, Bot: 0 },
  Person2: { Mid: 0, Support: 0, Jungle: 0, Top: 0, Bot: 0 },
  Person3: { Mid: 0, Support: 0, Jungle: 0, Top: 0, Bot: 0 },
]

Моя схема выглядит примерно так:

const rankSchema = new Schema(
  {
    rank: Schema.Types.Mixed,
    lastUpdated: { type: Date, default: Date.now() },
  },
  { minimize: false }
);

Я также пробовал:

{
    rank: [],
    lastUpdated: { type: Date, default: Date.now() },
},
// and also
 {
    rank: { type: Schema.Types.Mixed },
    lastUpdated: { type: Date, default: Date.now() },
  },

Но ничего из того, что я делаю, похоже, не работает. Я начинаю думать, что хранить такую ​​информацию невозможно, поэтому как лучше всего структурировать мои данные, чтобы мне не пришлось oop просматривать весь массив, чтобы найти конкретного c человека.

Изменить: для пояснения я пытаюсь сохранить весь этот набор данных в значении "rank" схемы.

1 Ответ

0 голосов
/ 09 июля 2020

Вы можете отформатировать свои данные следующим образом:

let  data = {
  Person1: { Mid: 0, Support: 0, Jungle: 0, Top: 0, Bot: 0 },
  Person2: { Mid: 0, Support: 0, Jungle: 0, Top: 0, Bot: 0 },
  Person3: { Mid: 0, Support: 0, Jungle: 0, Top: 0, Bot: 0 }
}

Затем вы можете получить к ним доступ по свойству, например:

data.Person1, data.Person2 ...

, также вы можете просто использовать Object как type для поля 'rank', вы можете сохранить свои данные в этом поле напрямую

const rankSchema = new Schema(
  {
    rank: {type: Object}
    lastUpdated: { type: Date, default: Date.now() },
  },
  { minimize: false }
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...