自我加入Ember-Data

时间:2012-12-05 16:12:03

标签: javascript ember.js ember-data

有没有人对如何使用ember-data手动创建自联接关系有任何建议?

例如,如果用户有很多关注者(其他用户),那么将这种数据结构构建为ember-data的最简单方法是什么?

1 个答案:

答案 0 :(得分:9)

我们可以找到而不会发疯的最佳方式是将自我联接关系代理到关系对象,然后将其映射到用户。

因此,如果用户有很多用户"然后你可以做到:

App.User = DS.Model.extend
  name: DS.attr('string')
  follows: DS.hasMany('App.Follow')
  followers:(->
    @get('follows').map((data)-> App.User.find(data.get('followedUserId')))
  ).property('follows.@each')

App.Follow = Ds.Model.extend
  user: DS.belongsTo('App.User')
  followedUserId: DS.attr('string')

希望有所帮助!