这是我的集合的样本集:
{
"name": "Bob",
"class": "3",
"marks": {
"maths": 70,
"science": 85
}
},
{
"name": "Ron",
"class": "3",
"marks": {
"maths": 80,
"science": 90
}
}
Run Code Online (Sandbox Code Playgroud)
使用Backbone的findWhere,我能够得到这样的查询模型:
Coln.findWhere({"name": "Ron"});
Run Code Online (Sandbox Code Playgroud)
但是如何根据数学标记查询模型?以下代码似乎不起作用:
Coln.findWhere({"marks.maths": 80});
Run Code Online (Sandbox Code Playgroud)
集合中混合了各种Underscore方法.特别是,有find一个允许你指定一个谓词函数,所以你可以做这样的事情:
Coln.find(function(m) { return m.get('marks').maths === 80 })
Run Code Online (Sandbox Code Playgroud)
如果要查找匹配的所有模型,请使用filter.