だから私は自分のコードから始めて、それをペアにして、それからさらにペアにして、コードがまだ機能していないモデルページにある例にたどり着きました。まず、私の単純なコードの残りは次のとおりです
App.Router.map(function() {
this.resource("multipost", function() {
});
});
App.MultipostRoute = Ember.Route.extend({
model: function() {
return App.Post.find();
}
});
App.Store = DS.Store.extend({
});
App.Post = DS.Model.extend({
firstName: DS.attr('string'),
lastName: DS.attr('string'),
isPersonOfTheYear: DS.attr('boolean')
});
そして、私のAPIはルート/postsでこれを返します
{
"posts": {
"first_name": "Barack",
"last_name": "Obama",
"is_person_of_the_year": true
}
}
私が試したいくつかの基本的なhtmlは別として
{{firstName}}
{{posts.firstName}}
{{post.firstName}}
など、私のテンプレートではどれも何も返しません。
何も吐き出していないボタンを押したときにモデルを吐き出す単純なコントローラーがあります
App.MultipostController = Ember.ObjectController.extend({
submitMultiPost: function() {
console.log(this.get('model').get('firstName'));
//this.get('model').save();
}
})
そして、何も返されていない多くのコマンドを開発コンソールにダンプしました。ここで何が欠けているのでしょうか? ルートとして「posts」ではなく「post」を返すjsonを持っていたときにエラーを吐き出していたので、何かをしようとしています。しかし、何をしても、どのように探しても、モデルには何も見つかりません。はい、XHR 呼び出しを確認しましたが、正常に呼び出しを行い、データを取得しています。
他の唯一の奇妙な点は、モデルにバインドされた 2 つのテキスト フィールドがあり、2 つのフィールドのいずれかに入力すると表示されることです。それまでは、モデル全体には何も含まれておらず、空に見えます。ここで何が欠けていますか?