Я новичок в Монго, и до сих пор не было проблем с его использованием.Пока я не застрял в этом.Мне нужно отправить документ в массив внутри массива.См. Ниже json.
{
'user_id':'{1231mjnD-32JIjn-3213}',
'name':'John',
'campaigns':
[
{
'campaign_id':3221,
'start_date':'12-01-2012',
'messages':
[
{
'message_id':211134,
'email':'john@gmail.com'
}
]
},
{
'campaign_id':3222,
'start_date':'13-01-2012',
'messages':
[
{
'message_id':315521,
'email':'john@gmail.com'
}
]
}
]
}
Я хочу отправить один документ в массив сообщений в массиве кампаний (независимо от порядка).Это означает, что мне нужно добавить новый документ в массив сообщений.И все эти сообщения находятся внутри другого массива или кампаний на пользователя.Я использую Python, поэтому мой код будет выглядеть следующим образом.
query = {"user_id" : "{1231mjnD-32JIjn-3213}", "campaigns.campaign_id": 3221}
message = {"message_id":4213122, "email":"john@gmail.com"}
op = {"$push" : {"campaigns.messages":message}}
mongo.TestDatabase.members.update(query, op)
Нет ошибок при выполнении.Но в документе, похоже, нет изменений (обновление не сделано).Что я здесь не так делаю?