我有一个包含嵌套对象的Word Schema,如下所示。如果我想在值为xxx的"elementary_one_reading“中搜索单词,我可以简单地执行db.words.find({"apperance.elementary_one_reading": xxx})
然而,我想知道如何在mongoose中做到这一点,假设我想要传递一个键的变量。特别是,我希望有一种方法可以做一些像下面这样的事情,但它不起作用。
function(key, value) {
Word.find({"appearance." + key: value}, function(err, results) {
}
}
{ "word" : "岁", "_id" : ObjectId("1"), "appearance" : { "elementary_one_reading" : [ 1 ] }}
{ "word" : "女", "_id" : ObjectId("2"), "appearance" : { "elementary_one_reading" : [ 1 ] }}
{ "word" : "我", "_id" : ObjectId("3"), "appearance" : { "elementary_two_reading" : [ 1, 8 ] }}
{ "word" : "你", "_id" : ObjectId("4"), "appearance" : { "elementary_two_reading" : [ 1, 2 ] }}发布于 2013-08-27 16:39:11
我刚刚意识到解决这个问题的简单方法是通过使用查询。我可以很容易地完成以下操作。
var field =‘apparance.element_one_reading’;Word.find().where(field,xxx).exec(回调);
https://stackoverflow.com/questions/18460207
复制相似问题