2016-03-04 50 views
0
exampleData = { 
    id: 1, 
    name: 'A', 
    house: { 
     address1: 'California' 
     address2: 'California' 
    } 
} 

House = Backbone.RelationalModel.extend({ 
    urlRoot: function urlRoot() { 
     var personId = this.get('person').id; // this.get('person') is null 

    } 
}); 


Person = Backbone.RelationalModel.extend({ 
    relations: [ 
     { // Create a (recursive) one-to-one relationship 
      type: Backbone.HasOne, 
      key: 'house', 
      relatedModel: House, 
      reverseRelation: { 
       type: Backbone.HasOne, 
       key: 'person' 
      } 
     } 
    ], 

    initialize: function() { 
    } 
}); 

我需要人的模型数据在众议院模型,骨干关系一对一关系,如何得到父母的模型数据?

但this.get(“人”)返回null,即使我设置了reverseRelation。

我怎样才能得到人的数据在家里?

+0

不应该你是在House模型中定义一个belongsTo关系? – Aukhan

+0

houseModel.get(“person”) – Farside

回答

0

我认为你的代码将不起作用。模型的定义有点不对。当你定义的关系,应该是参考对象,而不是字符串值:

relatedModel: House // instead of 'House' as a string 

然后你可以通过干将参考,从每个模型,都:

houseModel.get("person"); 
personModel.get("house");