0

Ember-Data rev 12 にアップグレードしましたが、Fixture をロードする方法がわかりません。key' andモデルで sideLoadAs`を試してみましたが、効果がありませんでした。

モデル:

Sks.User = DS.Model.extend
  kudosReceived: DS.hasMany('Sks.KudoReceived', key: 'kudo_received_ids', sideLoadAs: 'kudos_received')
  name: DS.attr("string")
  email: DS.attr("string")

備品:

Sks.User.FIXTURES = [
  id: 1
  name: 'Joe Doe'
  email: 'joe.doe@gmail.com'
  kudo_received_ids: [1, 2]
  kudos_received: [
    id: 1
    value: 2
    comment: 'Because you are nice to me!'
  ,
    id: 2
    value: 3
    comment: 'It was awesome!'
  ]
]
4

1 に答える 1

0

フィクスチャは、単なる配列ではなく、オブジェクトの配列である必要があります。また、タイプごとに個別のフィクスチャに分割してみてください。

Sks.User.FIXTURES = [{
    id: 1,
    name: 'Joe Doe',
    email: 'joe.doe@gmail.com',
    kudos: [1,2]
}];

Sks.Kudos.FIXTURES = [{
    id: 1,
    value: 2,
    comment: 'Because you are nice to me!'
}, {
    id: 2,
    value: 3,
    comment: 'It was awesome!'
}];

次に、この 2 つを結び付ける単純な関係が必要です。

Sks.User = Ds.Model.extend({
    name: DS.attr('string'),
    email: DS.attr('string'),
    kudos: DS.hasMany('Sks.Kudos')
});

Sks.Kudos = Ds.Model.extend({
    value: DS.attr('number'),
    comment: DS.attr('string'),
    user: DS.belongsTo('Sks.User')
});

それはあなたのためにそれをするはずです。

于 2013-04-12T11:41:52.963 に答える