ネストされたルートで編集フォームを読み込もうとしています。会社を編集するための URL である /companies/87/edit にアクセスすると、編集テンプレートが表示されますが、単一のモデルではなく、DS.RecordArray:ember314 が表示されます。これは、必要な 1 つのモデル オブジェクトを含む配列です。
ember314 は、会社のテンプレートのモデルで使用されているのと同じ配列であることに気付きました。CompanyEditRoute のモデルが {} を返すようにしてみましたが、その変更がテンプレートに反映されていることがわかります。配列内ではなく、必要なモデルのみを取得する方法がわかりません。
編集
ネストされたルートは、メイン ルートからモデル配列を拾い上げているだけのようです。適当なURLがヒットしたときに各Routeのモデルメソッドが呼び出されていることを確認したので、これは奇妙です。
App.Router.map(function() {
this.resource('companies', function() {
this.resource('company', { path: ':company_id' }, function() {
this.route('edit');
});
});
});
App.CompanyEditRoute = Ember.Route.extend({
model: function(params) {
return App.Company.find(params.company_id);
},
renderTemplate: function() {
this.render({into: 'application', outlet: 'modal'});
}
});