假设我有2个型号:
App.Address = DS.Model.extend({ street: DS.attr('string'),person: DS.belongsTo('App.Person') }) App.Person = DS.Model.extend({ name: DS.attr('string'),addresses: DS.hasMany('App.Address') })
现在我创造了一个人
App.person = App.Person.createRecord({name: 'Bill'}); App.store.commit();
如果我尝试向这样的人添加地址
address = App.Address.createRecord({street: '123 Fake Street'}); App.person.get('addresses').pushObject(address);
并提交交易
App.store.commit();
将保存新地址,但不会将人物对象识别为已更改;
即使id列表已经过去了
{ ... "addresses": [] }
至
{ ... "addresses": [3] }
有没有办法让ember-data知道我的person对象已被更改并且需要它
要得救?
解决方法
截至目前(ember-data revision 4),没有办法做到这一点.该对象仅保留在belongsTo端,因为它具有外键,因此如果您在关系的属于一侧设置值,它应该保持不变.下一版本的ember数据应解决此问题.
原文地址:https://www.jb51.cc/js/156776.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。