我有一个模型树,我想让它们从一个大的JSON请求中预先加载,然后能够一次更改一个,而无需保存整个树或重新加载整个树,也无需为每个模型制作两个版本。
我遇到的问题是,如果每个子模型都有一个keySource,它们就不会预先加载,但如果没有keySource,你就无法单独加载或保存。
我在前期加载中的内容是整个对象树完全连接(没有id列表),因为我看不到解决这一问题的方法。这就是问题所在吗?或者,如果没有两个版本的模型以某种方式连接在一起,我试图做的事情就不可能实现吗?
如果覆盖Backbone的保存方法,则可以进行选择性保存。模型我写了一篇关于这个主题的文章。如果您想创建表示模型各部分的小型子模型,请选择。当它们被更改时,您可以获得它们的changedAttributes散列,并将其传递到主模型的保存中。使用我在文章中讨论的方法,完全可以在保存期间只发布模型的一部分。
你有没有考虑过使用集合?您可以覆盖集合的解析方法来创建模型。只是一个想法。