Ember.Select的默认选择值使用belongsTo Ember数据模型属性?

时间:2014-04-25 01:53:40

标签: ember.js ember-data

我正在尝试做的事情似乎是Ember.Select的一个非常常见的用例,但我还没有找到解决方案。

我正在尝试使用belongsTo Ember Data属性设置Ember.Select的默认值。我在我的模板中有以下Ember.Select视图:

{{view Ember.Select content=neighborhoodOptions value=neighborhood.id optionValuePath="content.value" optionLabelPath="content.label"}}

此视图的控制器如下所示:

App.PropertyEditController = Ember.ObjectController.extend({
    neighborhoodOptions: [{value: 1, label: 'Foo'}, {value: 2, label: 'Bar'}]
});

我正在使用Ember Data,并为该控制器创建了一个带有belongsTo属性的模型,如下所示:

var attr = DS.attr;

App.Property = DS.Model.extend({
    neighborhood: DS.belongsTo('neighborhood')
});

但是,在页面加载时,这不会设置任何默认选项。更糟糕的是,当我在Ember Inspector控制台中查看邻域模型时,它会使neighbor.id未定义。如果我从视图中删除value属性,则会再次定义neighborhood.id,因此似乎Ember.Select value属性行为将id设置为undefined。我不明白为什么这样做。

如何绑定邻居id属性并使其成为默认的Ember.Select选项?

1 个答案:

答案 0 :(得分:0)

尝试:

selection=neighborhood

而不是value。这样它将绑定到该模型实例而不仅仅是id值。