mam szkielet modelu, który zawiera zbiór:Backbone.Models: Jak wykonać głęboką serializację JSON z wbudowanymi kolekcjami?
var Stream = Backbone.Model.extend({
defaults: {
dummyField: "1",
excludedUsers: new Backbone.Collection()
}
});
var s = new Stream;
s.get('excludedUsers').add({name:'Stefan'});
console.log(s.toJSON())
Wynik:
{ dummyField: '1',
excludedUsers:
{ length: 1,
models: [ [Object] ],
_byId: {},
_byCid: { c1: [Object] } } }
zamiast "oczekiwany":
{
dummyField: '1',
excludedUsers: [ {name:'Stefan'} ]
}
ponieważ Kręgosłup nie jest głęboko JSONing Model. Jedynym sposobem obejścia jest prototyp override the toJSON method na prototypie Stream, ale to nie pomoże w innych przypadkach. Czy istnieje ogólne/lepsze rozwiązanie (oprócz ciężkiej wtyczki Backbone.Relational)?