Ember 2.5 Ember-Data 2.5有多个和POST请求

时间:2016-05-10 12:47:41

标签: ember.js ember-data

Ember CLI 1.13.14 恩伯2.5 Ember-Data 2.5

我有两个模型的应用程序。

// bulkpayment.js
export default DS.Model.extend({
  bookingId     : DS.attr(),
  leadName      : DS.attr(),
  bookingRef    : DS.attr(),
  dateTravel    : DS.attr(),
  paidAmt       : DS.attr(),
  dueAmt        : DS.attr(),
  requsitionAmt : DS.attr(),
  dateDue       : DS.attr()
});

//bulkcostrequisitiom.js 
export default DS.Model.extend({
  transType     : DS.attr(),
  dateTrans     : DS.attr(),
  bulkPayments  : hasMany('bulkpayment')
});

我使用this.store.query('bulkpayment', filter)执行搜索以检索所有必需的记录。它们被加载并显示给用户。

然后,用户选择他们希望支付的记录,在申请单字段中输入要支付的金额,然后按下表单上的Requisition Payments按钮。

然后我创建了一个新的批量成本申请记录

let bcr = this.store.createRecord('bulkcostrequisition');

设置transType和dateTrans

bcr.transType = '1';
bcr.dateTrans = Date.now();

并添加所有选定的记录(在本例中为所有记录)

bcr.get('bulkPayments').pushObjects(this.store.peekAll('bulkpayment'));

然后我尝试保存批量成本申请记录

this.get('bulkcostrequisition').save();

这会在服务器上调用正确的方法并传递信息,但是,它只传递关系(hasMany)bulkPayments字段中的id和对象类型,如下所示。

enter image description here

有没有办法发送属性?

1 个答案:

答案 0 :(得分:0)

我不确定这是您的问题的原因,但您应该在批量付款模式中定义匹配的bulkCostRequisition: belongsTo('bulkcostrequisition')属性,如此处的ember文档中所述:

https://guides.emberjs.com/v2.5.0/models/relationships/#toc_one-to-many