次のように、ObjectIdによって参照されるサブドキュメントのコンテンツを検索しようとしています。
Model.Idea.findOne('_key.code':code).populate('_key').exec (err,idea) ->
return done err if err
should.exist idea
スキーマは次のようになります。
Key = new mongoose.Schema(
type:
type: String
enum: types
index: true
code:
type: String
index:
unique: true
)
Model.Key = ...
Idea = new mongoose.Schema(
text: String
name: String
_key:
type: mongoose.Schema.Types.ObjectId
ref: 'Key'
)
Model.Idea = ...
私がこのようにしている理由は、さまざまなキータイプに多数のキーを事前に割り当ててから、必要に応じてそれらを割り当てたいからです。
何らかの理由でこれは可能だと思いましたが、クエリは結果を返さないようです。最初にキーを検索してからIDを参照せずにそれを行う方法はありますか?埋め込まれたサブドキュメントからこれを実行できるという印象を受けたかもしれませんが...