2017-06-10 30 views
0

我有一個類賬戶等(Groovy中):無效的關係

@NodeEntity 
class Account { 
    @GraphId 
    Long id 

    String accountId 
    String firstname 
    String lastname 

    @Relationship(type = 'HAS_INVITED', direction = Relationship.INCOMING) 
    List<Account> invitations = [] 

    String getName() { 
     if (firstname && lastname) { 
      return "$firstname ${lastname[0]}." 
     } 

     return email 
    } 

    @Override 
    int hashCode() { 
     if (id) { 
      return id.hashCode() 
     } else { 
      return 0 
     } 
    } 

    @Override 
    boolean equals(Object obj) { 
     if (obj.is(this)) { 
      return true 
     } 

     if (obj instanceof Account) { 
      return obj.id == id 
     } 

     return false 
    } 

    @Override 
    String toString() { 
     "$email" 
    } 
} 

在我的數據庫,我創建了2個帳戶克里斯和鮑伯。鮑勃已經邀請下面的克里斯。 enter image description here

要加載的帳戶,我已經寫了這個倉庫:

interface AccountRepository extends GraphRepository<Account> { 
    Account findByAccountId(String id) 

    Account findByEmail(String email) 

} 

現在,我的問題:當我加載克里斯帳戶我得到鮑勃應邀(這是確定)。但是,我已經邀請了鮑勃的克里斯,我不明白爲什麼。 對我來說,我應該有一個邀請克里斯,但是0給鮑勃。

+0

你有'名單 invitations'二傳手?如果是這樣,它也需要由@Relationship註釋。 –

+0

太棒了!有用。 – ChriX

回答