Escrevendo um programa com a quantidade de coleções aninhadas, encontrei um problema: Backbone.js não tem coleções aninhadas.
Aqui está uma pequena solução alternativa:
Name = Backbone.Model.extend({
defaults: {
value: '',
from: '',
until: '',
},
});
createNameCollection = function(id){
var NameCollection = Backbone.Collection.extend({
model: Name,
localStorage: new Store('names_' + id);
});
return new NameCollection();
};
Agora, cada entidade que requer um NameCollection pode acessá-lo chamando createNameCollection com seu próprio id como parâmetro.
Em uma visualização, isso pode parecer …
var names = createNameCollection(this.model.id);
names.fetch();
// now you're ready to operate on the NameCollection.
Feliz aninhamento!