Ember Selectbox以

时间:2015-12-15 06:12:26

标签: ember.js ember-cli

通过输入表单上的选择框选择与其父级的belongsTo关联时遇到问题。

有问题的模型

export default DS.Model.extend({
  proNumber: DS.attr('number'),
  status: DS.attr('string'),
  special: DS.attr('string'),
  customer: DS.belongsTo('customer', { async: true }),
  carrier: DS.belongsTo('carrier', { async: true }),
  equipmentList: DS.belongsTo('equipment-list', { async: true}),
  stops: DS.hasMany('stop'),
  loadRates: DS.hasMany('load-rate'),
  grossPay: Ember.computed.mapBy('loadRates', 'rate'),
  totalGrossPay: Ember.computed.sum('grossPay')
});

我想要关联的模型是上面的客户。

输入 - 来自Material - 与大多数选择框Ember插件完全一样

  {{md-select content=customerList
     value=model.customer  <-- doesn't work
     label="Customer"
     prompt="Please Choose a Customer..."
     optionLabelPath='content.name'
     optionValuePath='content.id'}}

该值无效。

2 个答案:

答案 0 :(得分:0)

我猜你要么需要改变

optionValuePath='content.id'

optionValuePath='content'

或根本没有这条线。然后组件可能支持属性&#34;选择&#34;而不是&#34;价值&#34;尽可能多的选择组件。

我对一个不同的选择组件有一个类似的问题和一个不同的情况,我想在这里添加,因为我知道我在试图解决我的问题时偶然发现了这个线程。我是如何通过以下方式解决的。我有一个&#34;问题&#34;有很多答案,其中一个可以被选为&#34;正确答案&#34;。

answers: DS.hasMany('answer'),
correctAnswer: DS.belongsTo('answer'),

correctAnswerId: Ember.computed('correctAnswer', 'correctAnswer.id', {
    get() {
        return this.get('correctAnswer.id');
    },
    set(key, value) {
        this.set('correctAnswer', this.get('answers').findBy('id', value));
        return value;
    }
}),

答案 1 :(得分:-1)

belongsTo意味着它是一个单一的对象。不是像对象那样的数组。

为什么要对单个对象使用选择框?