gpt4 book ai didi

ember.js - 如何在 Ember Data 中保存关联模型的更改

转载 作者:行者123 更新时间:2023-12-02 06:10:56 26 4
gpt4 key购买 nike

我正在使用 Ember 1.3.0 运行 Ember Data 1.0.0。

我有这个数据:

{
"product": {
"id": 185588,
"name": "USB MIDI Adapter",
"images":["imageid1", "imageid2"....]
},
"images": [
{
"id": "imageid1",
"url": "google.com"
},
{
"id": "imageid2",
"url": "google.com2"
}
]
}

这些模型:
App.Image = DS.Model.extend({
url: DS.attr('string')
});

App.Product = DS.Model.extend({
name: DS.attr('string'),
images: DS.hasMany('Image')
});

在我的模板中,我有一个编辑表单来更改相关图像上的 url:
  <form {{action save on="submit"}}>
{{input type="text" value=name}}

{{#each images}}
* {{input type="text" value=url}}<br>
{{/each}}

<button type="submit">Save</button>
</form>

保存 Action 是:
save: function() {
var product = this.modelFor('productEdit');
product.save();
this.transitionTo('product', product);
}

问题是保存操作只保存产品(PUT 产品),而不是对图像 URL 所做的更改。模型绑定(bind)工作正常,当我更改图像上的 url 时,gui 会按应有的方式更新,但 PUT 没有按应有的方式发送。

如何保存图像更改?

最佳答案

您需要在每条记录上调用 save ,在 recordarray 上调用 save (将迭代并保存),或者您可以覆盖序列化程序( serializeIntoHash )将图像注入(inject)产品的保存中。

records.forEach(function(record){
if(record.get('isDirty')) record.save();
});

关于ember.js - 如何在 Ember Data 中保存关联模型的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20640505/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com