0

ember.jsとember-dataの最新のマスターブランチを使用しようとしています。

詳細は次のとおりです。

window.Links = Ember.Application.create();

Links.Store = DS.Store.extend({
  revision: 11,
  adapter: 'DS.RESTAdapter'
});

Links.List = DS.Model.extend({
  urls: DS.hasMany('Links.Url', { embedded: true })
});

Links.Url = DS.Model.extend({
  url: DS.attr('string'),
  list: DS.belongsTo('Links.List')
});

コンソールで次のことを行うと:

var list = Links.List.find("test");

APIは以下を返します。

{"list":{"id":"test","urls":[{"id":"44e5aa","url":"http://google.com"}]}}

できます:

list.get("id") // => "test"
list.urls // => undefined 

アソシエーションを機能させることができないようです。私は何か間違ったことをしていますか?

4

1 に答える 1

1

私たちの多くは同じ船に乗っていると思います-これは私が今日以前に投稿した問題と私が参照した問題に非常似ています。うまくいけば、それは私たちがまもなく修正または決定的な答えを得るということを意味します!

brgが推奨するように、次のことを試してみてください。

Links.Store.adapter.serializer.map('Links.List', {
   urls: {embedded: 'load'}
});

もちろん、インライン埋め込みステートメントを削除します。それは私の問題を解決しませんでしたが、あなたの場合はそうかもしれません。

ここに記載されているように、埋め込まれたbelongsToアソシエーションにも問題があることに注意してください

于 2013-01-06T04:30:08.180 に答える