コレクションを含むバックボーン モデルがあります。
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())
収量:
{ dummyField: '1',
excludedUsers:
{ length: 1,
models: [ [Object] ],
_byId: {},
_byCid: { c1: [Object] } } }
「期待される」の代わりに:
{
dummyField: '1',
excludedUsers: [ {name:'Stefan'} ]
}
バックボーンはモデルを深く JSON 化していないためです。回避する唯一の方法は、ストリームのプロトタイプでtoJSON メソッドをオーバーライドすることですが、それは他のケースでは役に立ちません。一般的な/より良い解決策 (重いBackbone.Relationalプラグイン以外) は既にありますか?