2016-08-04 2 views
0

я такой Шма в MongoDb:Как работать с пустым массивом в mongoDB?

"_id" : ObjectId("57a376dc317843700b7bd83f"), 
    "approved" : false, 
    "experience" : 0, 
    "placeOfWork" : "", 
    "education" : "", 
    "price" : 0, 
    "courses" : [], 
    "certificates" : [], 
    "createdAt" : ISODate("2016-08-04T17:09:48.773Z"), 
    "profileImg" : "images/profile.png", 
    "role" : "doctor", 
    "phone" : "", 
    "password" :'', 
    "email" : "[email protected]", 
    "foreName" : "", 
    "surname" : "", 
    "name" : "", 
    "__v" : 0 
} 

и я хочу, чтобы сохранять изображения в массиве строк в сертификатах [ «образ», «изображение» ...], но я урожденная особый порядок, это как Возможное в JavaScript, чтобы добавить изображение в массив по индексу, как

certificates{index] = 'something'; 

и mongogoDb он хранит как этого сертификаты: [0: «что-то», 1: «что-то», х: «что-то»] 0,1, х спасибо.

ответ

0

Вы помещаете элементы в массив с оператором $push, элементы добавляются в конец массива. Чтобы вставить элемент в определенную позицию, вы можете использовать $ push вместе с оператором $position. Если массив пуст, он не создает нулевые элементы. Чтобы смоделировать поведение, которое вам нужно, вы можете добавить документы в массив, как этот {index: 0, image: "something"}.

Кстати, если вы собираетесь хранить изображения, вам может потребоваться ознакомиться с документацией GridFS.