2012-12-05 17 views
8

Czy ktoś ma jakieś sugestie, jak ręcznie utworzyć relację self-join za pomocą danych ember?Self-Join z Ember-Data

Jeśli na przykład użytkownik miał wielu obserwatorów (innych użytkowników), jaki byłby najprostszy sposób zbudowania tej struktury danych na dane embers?

Odpowiedz

9

Najlepszym sposobem, który moglibyśmy znaleźć bez szaleństwa, było pośredniczenie w relacjach samo-łączenia z obiektem relacji, a następnie po prostu odwzorowanie tego na użytkownika.

Więc jeśli użytkownik ma wiele „użytkowników” poprzez następujące potem można zrobić:

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('[email protected]') 

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

nadzieję, że pomoże!

+0

dziękuję, to naprawdę super pomocne! – hankang

+1

Poważnie, jak to zrobić. To znaczy, czy jesteś częścią zespołu deweloperskiego Ember? Niesamowity. –