したがって、3 つのモデル間で hasMany/belongsTo 関係が設定されています。
- アプリのキャラクター
- アプリスキル
- アプリランク
要点は次のとおりです。
App.Character = DS.Model.extend({
skills: DS.hasMany('App.Rank')
});
App.Rank = DS.Model.extend({
rank: DS.attr('number'),
skill: DS.belongsTo('App.Skill'),
character: DS.belongsTo('App.Character', {inverse: 'skills'}) //I've got a few properties in App.Character tied to this one, actually. Hence the need for "inverse"
});
App.Skill = DS.Model.extend({
name: DS.attr('string'),
rank: DS.hasMany('App.Rank')
});
基本的に、静的なスキルのリストがあります。各キャラクターには各スキルのランクがあります。これは私のフィクスチャ データでは問題なく機能しますが、App.Character の新しいレコードのランク データを入力する方法がわかりません (つまり、App.Characters.createRecord() を使用する場合)。
現在、createRecord() に他のすべてのデフォルト データを入力していますが、キャラクターを作成するときに App.Rank に新しいエントリを追加する方法 (または各スキルに新しいエントリを確実に追加する方法) がわかりません。 )。
基本的に、新しい Character レコードを作成するときは、すべての Skill レコードを調べて、新しい Character レコードに関連付けられたそれぞれの新しい Rank レコードを作成します。
これは理にかなっていますか?
だから私の質問は: レコードの hasMany 子フィールドに新しい関連レコードを作成するにはどうすればよいですか?