Mon go неправильно вставляет вложенный массив как индексированный объект - PullRequest
0 голосов
/ 12 февраля 2020

Я пытаюсь вставить документ с вложенными массивами в качестве объектов-значений, но mon go преобразует вложенный массив в индексированный объект.

    db.myCollection.insertMany([
    {
        _id: ObjectId("5e41974d65f219c3310f2b4f"),
        _class: "myClass",
        myFirstLevelArray: [
            {
                myNestedArray: [
                    {
                        value: "value",
                        value2: "value2"
                    },
                    {
                        value: "value",
                        value2: "value2"
                    }                   
                ]
            }
        ]

    }]);

Я ожидаю, что mon go хранит следующий объект:

{
        _id: ObjectId("5e41974d65f219c3310f2b4f"),
        _class: "myClass",
        myFirstLevelArray: [
            {
                myNestedArray: [
                    {
                        value: "value",
                        value2: "value2"
                    },
                    {
                        value: "value",
                        value2: "value2"
                    }                   
                ]
            }
        ]

    }

Но я получаю следующее:

   {
        _id: ObjectId("5e41974d65f219c3310f2b4f"),
        _class: "myClass",
        myFirstLevelArray: [
            {
                myNestedArray: {
                    '0': {
                        value: "value",
                        value2: "value2"
                    },
                    '1': {
                        value: "value",
                        value2: "value2"
                    }                   
                }
            }
        ]

    }

Я подумал, что мне может понадобиться добавить ключевое слово $each или что-то в этом роде, но, похоже, что они не подходят для операторов вставки. Что-то не так с утверждением? Нужно ли на нем ставить какой-то флаг или это какая-то ошибка?

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