Có các mảng bên trong các mảng hầu như luôn là một ý tưởng tồi vì một số lý do. Tôi đã đặt các chiến dịch vào một bộ sưu tập riêng để chúng trở thành tài liệu cấp cao nhất.
Điều đó nói rằng, bạn có thể đẩy đến một mảng thông điệp của một chiến dịch cụ thể thông qua:
db.members.update(
{"user_id" : "{1231mjnD-32JIjn-3213}", "campaigns.campaign_id": 3221},
{$push:{"campaigns.$.messages":{"message_id":4213122, "email":"[email protected]"}}}
)