1

在我的应用程序中,模型之间有两种方式 1:1 的关系。当试图在它们之间建立关联时,我得到......

Uncaught RangeError: Maximum call stack size exceeded

...并且跟踪重复

OrderedSet.forEach
Map.forEach
DS.Model.Ember.Object.extend.toJSON
DS.Model.Ember.Object.extend.addBelongsToToJSON
DS.Model.Ember.Object.extend.toJSON
Map.forEach
OrderedSet.forEach

代码的相关部分:

App.Employee = DS.Model.extend( {
    // ... 
    recruitment:DS.belongsTo( 'App.Recruitment', { embedded: true } )
} );

App.Recruitment = DS.Model.extend( {
    // ...
    employee:DS.belongsTo( 'App.Employee', { embedded: true } ),
} );

// ...

recruitment.set('employee', employee);
employee.set('recruitment', recruitment);
App.store.commit(); // <= boom

这是 Ember Data 应该支持的东西,还是我处理这一切都错了?

4

2 回答 2

2

Ember-Data 目前不支持一对一关联。

于 2012-10-12T14:56:17.900 回答
0

这已得到修复,现在是使模型相互归属的直接过程:

App.User = DS.Model.extend({
  profile: DS.belongsTo('profile')
});

App.Profile = DS.Model.extend({
  user: DS.belongsTo('user')
});

以上是来自http://emberjs.com/guides/models/defining-models/的示例

于 2014-05-24T08:54:12.600 回答