Bạn có thể sử dụng toán tử vị trí để xác định phần tử mảng:
Vì vậy, có lẽ một cái gì đó như:
User.collection.update(
{ :_id => user.id, :matches => BSON::ObjectId('4e40238dbc9f6ec5a6000eed') },
{ :$set => { 'alert.matches.$' => matches } }
)
Nhưng như Sergio lưu ý, rất khó để xác định cấu trúc tài liệu của bạn dựa trên thông tin hạn chế trong câu hỏi của bạn.
Có vẻ như có thêm thông tin sau khi tôi trả lời và có vẻ như:
{ :$set => { 'alerts.$.matches' => ... } }
là những gì bạn cần. Và bạn sẽ cần bao gồm :matches
trong truy vấn để $
có một cái gì đó để tham khảo.