我有以下设置。每个帐户可以有多个配置文件。
应用程序.js:
App.Router.map(function () {
this.resource("accounts", function () {
this.resource("profiles", {path: "/:account_id"})
})
});
App.Account = Ember.Object.extend({
findAll: function () {
// Ajax request to fetch data from the server
}
});
App.AccountsRoute = Ember.Route.extend({
model: function () {
return App.Account.findAll();
}
});
App.Profile = Ember.Object.extend({
findAll: function () {
// Ajax request to fetch data from the server
}
});
App.ProfilesRoute = Ember.Route.extend({
model: function () {
return App.Profile.findAll();
}
});
帐户.hbs:
{{#each model}}
{{#linkTo "profiles" tagName="li"}}
{{accountName}}
{{/linkTo}}
{{/each}}
{{outlet}}
个人资料.hbs:
{{#each model}}
{{profileName}}
{{/each}}
但是,这是行不通的。每当我单击其中一个帐户名称时,插座中都没有显示任何内容。如果我在 {{#linkTo "profiles" this tagName="li"}} 中传递“this”,那么我会收到一条错误消息,指出 Ember 无法遍历不是数组的东西。当父路由都具有数组控制器并且子模板显示在父路由的插座中时,您将如何从父路由链接到子路由?