Вложенные массивы в MongoDB? - PullRequest
0 голосов
/ 08 апреля 2011

Когда я записываю объект прямо перед его сохранением, он выглядит следующим образом:

{
    "type": "events",
    "labels": [
        "abc",
        "123"
    ],
    "keywords": [
        [
            "a",
            "b",
            "c",
            "d",
            "e"
        ],
        [
            "1",
            "2",
            "3",
            "4",
            "5"
        ]
    ],
    "_id": "4d9ddac669cb3bf5e855a366"
}

, но затем, если я захожу в оболочку Монго, он сохраняет как ...

{
    "_id": ObjectId("4d9ddac669cb3bf5e855a366"),
    "keywords": [

    ],
    "labels": [
        "abc",
        "123"
    ],
    "type": "events"
}

есть идеи?

1 Ответ

1 голос
/ 08 апреля 2011

Сохранение того, что непосредственно в оболочке MongoDB сохраняет структуру вложенности:

{
    "_id" : "4d9ddac669cb3bf5e855a366",
    "type" : "events",
    "labels" : [
        "abc",
        "123"
    ],
    "keywords" : [
        [
            "a",
            "b",
            "c",
            "d",
            "e"
        ],
        [
            "1",
            "2",
            "3",
            "4",
            "5"
        ]
    ]
}

И, насколько мне известно, все официальные драйверы правильно обрабатывают вложенные массивы.Похоже, что писатель BSON в Node, возможно, пропускает внешний массив.

Можете ли вы выполнить несколько похожих тестов, сохраняя то же самое в оболочке и с помощью Node, и посмотреть, отличаются ли они?

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