私はPOCアプリを書いています.EmberライブラリをRC1にアップグレードした後、問題が発生しています. 新しいバージョンのルートに移行すると、オブジェクトの文字列化されたバージョンが URL に表示されるように見えることに気付きました...
http://localhost:3000/posts/<App.Post:ember269:511401b8c589137c34000001>
このように遷移すると、ルートは正常に機能しますが、明らかにそのような URL に 2 回アクセスしようとしても機能しません。そこで、コードを編集して代わりに ID に移行することにしました。
私の編集ルートには、次の保存イベントがあります。
events: {
save: function(post){
post.one('didUpdate', this, function(){
this.transitionTo('posts.show', post);
});
post.get('transaction').commit();
}
}
これにより、遷移が発生すると上記のような URL が生成されます。ということで以下のように修正。。。
events: {
save: function(post){
post.one('didUpdate', this, function(){
this.transitionTo('posts.show', post.id);
});
post.get('transaction').commit();
}
}
これにより、正しい URL 形式が生成されますが、show route は出力を生成しません。(show outputは、正しい形式で初めて URL にアクセスしたときに出力を生成することに注意してください。編集ルートからURL に遷移したときではありません)。
App.PostsShowRoute = Em.Route.extend({
model: function(params){
return App.Post.find(params.id);
},
setupController: function(controller, model){
controller.set('content', model);
}
});
だから私は混乱しています。この問題の原因 (および RC がなぜそれを生成するのかを知っている場合) についての洞察をいただければ幸いです。私のケーキを持って食べてください。ありがとう!