这是我的收藏的样本集:

{
    "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

09-17 12:38