2013-07-11 49 views
3

假设你有一个模型:有没有办法让Ember模型的hasMany子女没有指定关系名?

App.Contact = DS.Model.extend 
    name: DS.attr('string') 
    addresses: DS.hasMany('App.Address') 

我知道我可以简单地做抢地址:

@get('model').get('addresses') 

但是说你有很多型号,每个都具有一个或多个不同的hasMany关系。有没有办法通过一般抢关系?

喜欢的东西:

@get('model').get('hasMany') 

回答

0

鉴于灰烬模型类,你可以得到它像的关系:

VAR属性= Ember.get(App.Post, '属性'); var relationships = Ember.get(App.Post,'relationships');

如果你不知道模型的类型,你可以用

var klass = model.get('constructor'); 
//or based on your question 
var klass = this.get('model.constructor'); 
+0

使用您的建议更换App.Post,我看到Ember.get(克拉斯,“关系”)返回一个Ember.MapWithDefault。它的“values”属性包含一个数组散列,其中一个包含一个Object {kind:“hasMany”,name:“addresses”}。为了能够接受你的答案,你怎样才能真正抓住hasMany关系? –

相关问题