1
在我的應用程序中,我正在查詢事件。我必須選擇符合以下要求的事件。查詢事件:檢查對象數組中是否存在特定項目
1.價值的user_id不應該等於當前用戶的ID
2.「取消」的自定義字段應該是假的
3.自定義字段「參與者」應包含當前用戶的ID
在其中cancelled
屬性將具有一個布爾值和participants
是一個數組第包含一些對象。
participants array:
participants : [{"userID":"52a15bebf172080g3g02abcd","nickname":"Anand"},{"userID":"58t85eryjc2fx3489nx4m90d","nickname":"Midhun"}];
我寫了下面的用於獲取事件
function getUsers(user){
Cloud.Events.query({
per_page: 1000,
where : {
"cancelled" : false,
"user_id":{"$ne":user.id},
//TODO: here I need to get the participants whose userID is equal to user.id
}
}, function(e){
if (e.success) {
alert('Success:\n' + 'Count: ' + e.events.length);
} else {
alert('Error:\n' +
((e.error && e.message) || JSON.stringify(e)));
}
});
}
如何檢查user.id是否存在於參與者對象數組?
UPDATE
我嘗試以下
where : {
"cancelled" : false,
"participants.userID" : user.id,
"user_id":{"$ne":user.id},
}
但返回0應該返回1
'participants.userID:user.id'? – WiredPrairie
@WiredPrairie:感謝您的回覆。我嘗試過,但沒有奏效。 – Anand
您需要爲您的問題添加完整的文檔示例。在一個非常簡單的測試中,我測試了它,並且我建議的語法工作正常。 – WiredPrairie