这是我的收藏的样本集:
{
"name": "Bob",
"class": "3",
"marks": {
"maths": 70,
"science": 85
}
},
{
"name": "Ron",
"class": "3",
"marks": {
"maths": 80,
"science": 90
}
}
使用Backbone的findWhere,我可以通过如下查询获得模型:
Coln.findWhere({"name": "Ron"});
但是,如何基于数学标记查询模型?下面的代码似乎不起作用:
Coln.findWhere({"marks.maths": 80});
最佳答案
集合中混入了各种Underscore methods。特别是,有find
可以让您指定谓词函数,因此您可以执行以下操作:
Coln.find(function(m) { return m.get('marks').maths === 80 })
如果要查找所有匹配的模型,请使用
filter
。