Ember.js 余烬数据-多对多关系?

Ember.js 余烬数据-多对多关系?,ember.js,ember-data,Ember.js,Ember Data,我正在从事的项目在很大程度上依赖于多对多关系,但是我无法看到如何使用Ember JS中的Ember数据来实现这一点 我目前拥有的用例由三个模型组成: Person Address PersonAddress 人与人之间的联系是我目前工作所必需的。有可能得到一个如何实现这一点的例子吗?显然,您正在尝试使用中间PersonalAddress模型来管理多对多关系,我假设该模型包含与单个地址关联的单个人员 这不是一个很好的做事方式。要查找某人的地址,您必须手动查找此人的PersonalAddress中

我正在从事的项目在很大程度上依赖于多对多关系,但是我无法看到如何使用Ember JS中的Ember数据来实现这一点

我目前拥有的用例由三个模型组成:

Person
Address
PersonAddress

人与人之间的联系是我目前工作所必需的。有可能得到一个如何实现这一点的例子吗?

显然,您正在尝试使用中间
PersonalAddress
模型来管理多对多关系,我假设该模型包含与单个地址关联的单个人员

这不是一个很好的做事方式。要查找某人的地址,您必须手动查找此人的
PersonalAddress
中的所有条目,然后从这些条目中获取地址。这种方法的问题之一是,例如,当添加新地址时,您必须重新执行此查找,并确保它自动执行,以便正确更新UI

最好是让
在人物和地址上都有很多关系。然后,余烬数据将保持一切同步,比如

// models/person.js
export default DS.Model.extend({
  name: DS.attr(),
  addresses: DS.hasMany('address')
});

// models/address.js
export default DS.Model.extend({
  address: DS.attr(),
  persons: DS.hasMany('person')
});

感谢您的回复,我的数据库模式使用这个中间表来存储有关链接的详细信息。你是说我仍然可以使用这个设置,但在我的web服务中,操作数据以返回你刚才所说的?注意到你在两个模型中都使用了hasMany,我认为这在Ember数据中是不可能的?自从Ember数据诞生以来,两个模型中都可能有hasMany,是处理多对多关系的首选方式。我不在乎你的服务器是如何组织的;服务器上的某些数据源可能更喜欢使用中间关系表的模型。您可以使用灰烬中的模型,但在灰烬方面需要做更多的工作。最好让web服务器以标准的余烬数据多对多形式提供和接受数据。