Можно ли использовать Collection.get(id), чтобы найти модель в коллекции Backbone.js cid, для модели, еще не сохраненной на сервере?
Из документации, похоже, что .get должен найти модель либо своим id, либо cid. Однако collection.get(cid)
не находит модель, тогда как это делает, collection.find(function(model) {return model.cid===cid; })
. Предположительно я пропускаю что-то основное.
var Element = Backbone.Model.extend({});
var Elements = Backbone.Collection.extend({ model: Element });
var elements = new Elements(), el, cids = [];
for (var i=0; i<4; i++) {
el = new Element({name: "element"+i})
elements.add(el);
cids.push(el.cid);
}
console.log(cids);
el1 = elements.get(cids[0]);
console.log(el1); // undefined
el1a = elements.find(function(model) { return model.cid === cids[0]; });
console.log(el1a); // success