对于belongsTo的Ember选择不更新hasMany结束

时间:2013-08-12 18:21:02

标签: ember.js ember-data

我正在尝试使用内置的ember select视图更改belongsTo。但是,当选择框更改时,只更新属于属性,而不是hasMany关系。以下jsbin显示了此行为http://jsbin.com/ewosiy/3/edit

在此示例中,一个人拥有多个事件,一个事件属于一个人。如果我更改了事件所属的人,则该事件将从原始人员中删除,但从未添加到新人员中。

我可以滚动自己的选择框组件,但只是想知道ember select是否真的没有更新关系的两端。

感谢。

1 个答案:

答案 0 :(得分:2)

为了使它工作,你需要在'person'对象的关系中使用'pushObject',你需要做这样的事情:

将您的选择更改为:

{{view Ember.Select
    contentBinding=controllers.application.model
    optionValuePath=content.id
    optionLabelPath=content.fullName
    selectionBinding=selectedPerson}}

并在您的eventController中添加:

selectedPersonChanged: function() {
  if(this.get('selectedPerson')) {
    this.get('selectedPerson.events').pushObject(this.get('content'));
  }
}.observes('selectedPerson')