2011-05-04 71 views

回答

2
var col = this.model.collection; 
var nextModel = col.at(col.indexOf(this.model) + 1) 
if(nextModel) nextModel.set({whatevar}); 

你并不需要保持父集合的轨道,骨干为你做。 你应该检查你是否也在收集结束。

+1

喜欢它。 backbone.js图片对我来说越来越清晰明了。这显然是由那些已经思考过并且已经将他们的工作投入到真正解决方案测试中的人们所做出的。谢谢。 – 2011-05-06 19:10:51

+0

这是在文档中?我找不到它。 – 2011-05-08 14:53:54

+1

这是在代码中。你可以在http://documentcloud.github.com/backbone/docs/backbone.html这个小警告中阅读注释版本,如果你将模型添加到多个集合中,只有最后一个会被引用。 – Julien 2011-05-08 16:41:12

0

我想我想出了一些东西。我会分享看看其他人的想法,以便其他人可以从中受益。

我只是将对父集合的引用传递给集合中的每个模型。

在我的收藏,添加一个新的实例时:

var newModelBInstance = new ModelB({ id: "xxx", ParentCollection: this }); 

然后,我ModelB视图中:

this.model.get("ParentCollection").at(this.model.sortValue + 1).set({ myAttr: false });