3 votes

trouver un modèle sur une collection

J'ai un ensemble de modèles qui sont ajoutés à une collection via un appel serveur. Tous mes modèles sont ajoutés et se retrouvent dans la collection. Maintenant, je veux un moyen de consulter les collections et de retourner un modèle basé sur un attribut id spécifié à l'intérieur du modèle. Je ne parle pas de l'identifiant intégré aux collections. Je parle d'un identifiant personnalisé qui fait partie de chaque modèle de la collection.

J'ai donc ceci, mais ma fonction _detect ne renvoie pas ce que je cherche.

    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);
        }

    });

});

3voto

Chapsterj Points 2035

Ok, j'ai trouvé, juste au cas où quelqu'un d'autre aurait besoin de la réponse.

getModelByCustomID: function( id ){

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

},

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X