1

当我使用 ember-data 将新记录添加到一对多字段时,我试图触发足够的 PUT 请求。

var track = genre.get('tracks').createRecord({name: "Hit me baby one more time!"})
track.get('transaction').commit()

这将向“/genres”发送一个 PUT 请求,并发送所有流派属性和其他曲目。

// PUT /genres
{"genre":{"name":"Pop","tracks": [{"name":"Hit me baby one more time!","genre_id":null}]}}

但我更喜欢某事。喜欢:

// PUT /tracks
{"track": {"name":"Hit me baby one more time!", "genre_id":1}}}

如果可能的话,我还想为 /tracks 上的 PUT 请求自动添加一个附加参数。这些是我的模型:

App.Genre = DS.Model.extend({
  name:         DS.attr('string'),
  tracks:       DS.hasMany('App.Track')
})

App.Track = DS.Model.extend({
  genre:      DS.belongsTo('App.Genre'),
  uri:        DS.attr('string')
})
4

1 回答 1

0

我的错,在 REST 适配器中我有这个设置:

DS.RESTAdapter.map('App.Genre', {
  tracks: { embedded: 'always' }
})

设置embeddedload解决我的问题。

于 2013-09-26T12:18:51.813 回答