我有三层对象,每一层都是一对多的。我想选择其他笔记本时,页面和列视图元素会获得级联更新。
笔记本 > 页面 > 列
使用 notebooksController 和 notebookController 我可以绑定
App.Notebook = SC.Record.extend({
name: SC.Record.attr(String),
pages: SC.Record.toMany('App.Page', {isMaster: YES, inverse: 'notebook'})
});
App.Page = SC.Record.extend({
pageNumber: SC.Record.attr(Number),
notebook: SC.Record.toOne('App.Notebook', {isMaster: NO, inverse: 'pages'}),
columns: SC.Record.toMany('App.Column', {isMaster: YES, inverse: 'page'})
});
App.Column = SC.Record.extend({
columnNumber: SC.Record.attr(Number),
page: SC.record.toOne('App.Page', {isMaster: NO, inverse: 'columns'})
});
在此之后,我似乎无法让 pagesController 的内容绑定工作。我希望 pagesController、pageController、columnsController 和 columnController 的内容被级联下来,这样当用户单击不同的笔记本时,呈现的视图会自动切换到正确的内容。
ArrayController notebooksController
// contents filled from fixture
ObjectController notebookController
// bound to notebooksController selection
ArrayController pagesController
// contentBinding: 'notebookController.pages' does not work!
ObjectController pageController
// bound to pagesController selection
// and down to column