Rails BackendでEmberを使用しています
Ember.VERSION : 1.0.0-rc.3 ember.js:349
Handlebars.VERSION : 1.0.0-rc.3 ember.js:349
jQuery.VERSION : 1.9.1
私は3つのモデルを持っています
App.SocialNetwork = DS.Model.extend({
name: DS.attr('string'),
actors: DS.hasMany('App.Actor'),
relations: DS.hasMany('App.Relation'),
});
App.Actor = DS.Model.extend({
name: DS.attr('string'),
x: DS.attr('number'),
y: DS.attr('number'),
social_network: DS.belongsTo('App.SocialNetwork'),
relations: DS.hasMany('App.Relation'),
isSelected: function () {
return false;
}.property(),
});
App.Relation = DS.Model.extend({
name: DS.attr('string'),
actors: DS.hasMany('App.Actor'),
social_network: DS.belongsTo('App.SocialNetwork'),
});
そして、RelationsController 内で Relation の新しいインスタンスを作成したい
こんな感じにしてみました
App.RelationsController = Ember.ArrayController.extend({
currentRelation: null,
add: function () {
// get the selected actors
var actors = this.get('socialNetwork.actors').toArray().filter(function (element) {
return element.get("isSelected") == true;
});
// create the new relation with those actors
var newRelation = App.Relation.createRecord({
actors: actors,
name: "New Relation",
});
this.set('currentRelation', newRelation);
this.get('content').pushObject(newRelation);
this.get('store').commit();
},
});
しかし、関係は保存されていません。作成された新しいレコードをデバッグしますが、アクターやソーシャル ネットワークの関連付けはありません。
ここで私が間違っていること、またはしていないことは何ですか?
よろしくお願いいたします。
PS: ところで、socialNetwork とアクターは正しく読み込まれます