私は次の設定をしています。各アカウントは複数のプロファイルを持つことができます。
app.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();
}
});
accounts.hbs:
{{#each model}}
{{#linkTo "profiles" tagName="li"}}
{{accountName}}
{{/linkTo}}
{{/each}}
{{outlet}}
プロファイル.hbs:
{{#each model}}
{{profileName}}
{{/each}}
ただし、これは機能していません。アカウント名の 1 つをクリックしても、アウトレットには何も表示されません。また、{{#linkTo "profiles" this tagName="li"}} で "this" を渡すと、Ember は配列ではないものをループできないというエラー メッセージが表示されます。親ルートと子ルートの両方に配列コントローラーがあり、子テンプレートが親のアウトレットに表示されている場合、親ルートから子ルートにリンクするにはどうすればよいでしょうか?