Ember.js 余烬:将模型数据复制到另一个
我有一个基本的订单输入表单,其中包含账单和发货地址字段(两者都基于“地址”模型)。我有一个复选框,上面写着“账单地址与发货地址相同?”如果选中,将把账单地址数据复制到发货地址 我该怎么做?我不太清楚。我认为,当单击“下一步”按钮时,如果“billShipSame”值=true,则复制数据。但实际上如何复制数据呢?还是我只是在处理这个问题时弄错了 模型如下所示:Ember.js 余烬:将模型数据复制到另一个,ember.js,ember-data,Ember.js,Ember Data,我有一个基本的订单输入表单,其中包含账单和发货地址字段(两者都基于“地址”模型)。我有一个复选框,上面写着“账单地址与发货地址相同?”如果选中,将把账单地址数据复制到发货地址 我该怎么做?我不太清楚。我认为,当单击“下一步”按钮时,如果“billShipSame”值=true,则复制数据。但实际上如何复制数据呢?还是我只是在处理这个问题时弄错了 模型如下所示: export default DS.Model.extend(Validations, { type: attr('strin
export default DS.Model.extend(Validations, {
type: attr('string'),
firstName: attr('string'),
lastName: attr('string'),
address1: attr('string'),
address2: attr('string'),
city: attr('string'),
state: attr('string'),
country: attr('string'),
postalCode: attr('string'),
phone: attr('string')
});
下面是我如何使用它们的精简版本:
billingAddress: computed(function() {
return this.get('store').createRecord('address', { type: 'billing'});
}),
shippingAddress: computed(function() {
return this.get('store').createRecord('address', { type: 'shipping'});
}),
orderModel: computed(function() {
return this.get('store').createRecord('order', {
billingAddress: this.get('billingAddress'),
shippingAddress: this.get('shippingAddress')
});
}),
我建议您使用“与账单相同”单选按钮触发一个操作,将数据复制到适当的字段中。这样,当有人单击“下一步”时,您的数据模型状态良好,您的提交操作可以专注于保存 编辑: 在两个模型之间复制值的最简单方法如下:
shippingAddress.setProperties(billingAddress.getProperties('firstName','lastName')); // etc
相信这会处理好你想要的东西……好吧,“与账单相同”默认为是(因为大多数购物者都会这样)。但我的问题是,从一个模型复制到另一个模型的语法是什么?啊,我没有意识到:-)更新了我的答案