在集合上找到模型

时间:2011-10-20 19:05:15

标签: javascript backbone.js underscore.js

我有一组通过服务器调用添加到集合中的模型。我的所有模型都已添加,并且正在追溯到该集合中。现在我想要一种方法来查找集合并根据模型中的指定id属性返回一个模型。我不是在讨论内置于id的集合。我正在引用一个自定义ID,它是集合中每个模型的一部分。

我有这个票价。但是我的_detect函数没有返回我所追求的内容。

    var collection = Backbone.Collection.extend({


        initialize: function( ) {
            _.bindAll(this);
            this.bind('add', this.modelIsAddedd);
            this.serverCall();
        },

        modelIsAddedd: function(model){
            console.log('model = ', model);
        },

        getModelByCustomID: function( id ){

            var model = this.detect( id, function( model ){ return model });

        },

        serverCall: function(){

            $.ajax({
                my ajax call with success and error

            });
        },

        onSuccess: function(response){
            this.add(response.data);
        }

    });

});

1 个答案:

答案 0 :(得分:3)

好的,以防万一其他人需要答案。

getModelByCustomID: function( id ){

        var model = this.detect( function( model ){ 
            return model.get('customIDName') == id;
        });

},