Last active
December 30, 2015 22:48
-
-
Save elmijo/7896161 to your computer and use it in GitHub Desktop.
Estendiendo la clase Backbone.Collection con este metodo podemos obtener un Array de los modelos que contienen una coleccion convertido en un objeto identico al que expresamos en el modelo, ademas podemos decirle las propiedades del modelo que deseamos obtener y solo devolvera los mismos.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Permite obtener un Array de los modelos que contiene la coleccion | |
* @param {Array} attrs Array con los nombres de las propiedades que quiero obtener | |
* @return {Array} Array de modelos | |
*/ | |
Backbone.Collection.prototype.attr = function(attrs){ | |
var self = this; | |
var coll = []; | |
var attrs = _.isArray (attrs)?attrs:false; | |
_.each(self.toArray(),function(ele,inx){ | |
if(attrs){ | |
coll[inx] = {}; | |
_.each(ele.attributes, function(el, nm) { | |
if(attrs.indexOf(nm)>=0){ | |
coll[inx][nm] = el; | |
} | |
}); | |
} | |
else{ | |
coll.push(ele.attributes); | |
} | |
}); | |
return coll; | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment