私は ember-pre4 と ember-data rev 11 を使用しています。
モデル:
A = DS.Model.extend({
//some other fields
b: DS.hasMany('B')
})
B = DS.Model.extend({
//some other fields
a: DS.hasOne('A')
})
私のルーターでは、モデル A のインスタンスを作成し、モデル B のインスタンスを作成してそれらを接続します。どちらも server-side を持っていませんid
。このようなもの:
var a = A.createRecord();
b = B.createRecord();
b.set('a', a)
a.get('b').addObject(b)
私が作ったモデルを保存したいとき:
a.transaction.commit()
そして、私は次のことを期待していました:
- 空の b で a を保存 // []
- パスaのIDをbに保存した後、bを保存します
- bを保存した後、aを再取得します
残念ながら、ember は 2 つのリクエストを並行して実行し、a のリクエスト データは次のとおりです。
"{//some fields, b: [/url_to_b//]}" // we dont have b's id
b のリクエスト データは次のとおりです。
"{//some fields } // we dont have a's id
この問題を解決する最善の方法は何ですか?新しい ember には私の状況に対する既定の解決策がありますか?それともすべて手動で行う必要がありますか?