我有一個providerData對象貓鼬模式:點標記不是貓鼬模式
... , providerData: {}, ...
,我想查詢基於providerData
對象物體的ID文件。
所以我認爲我將不得不使用點符號,像這樣:
User.findOne({ providerIDString: providerID }, function(err, user) {...});
其中
providerIDString is a string like 'providerData.facebook.id'
providerID is the providerData.facebook id
但是查詢保持返回任何結果,即使
db.users.find({"providerData.facebook.id":"THEFACEBOOKID"})
在
mongodb shell返回正確的文件
我是否正確地認爲這是因爲providerData.facebook
和providerData.facebook.id
未在用戶架構中定義?
這是否意味着我必須將它們添加到模式中,或者有沒有一種方法可以在不在貓鼬模式中的嵌套對象上使用點符號?
顯示您希望匹配的文檔。以及您實際使用的完整查詢。這將比你在這裏解釋的嘗試更清晰。 –